IMHO.WS

IMHO.WS (http://www.imho.ws/index.php)
-   Веб-программирование (http://www.imho.ws/forumdisplay.php?f=29)
-   -   проблемы с авторизацией (http://www.imho.ws/showthread.php?t=45247)

cadet 05.12.2003 18:18

проблемы с авторизацией
 
Доброго времени,
поможить в этой простой ситуации,
1.
PHP код:

$log=   $_POST['login'];   
$pas=   $_POST['password'] ;  
$res mysql_query("select * from writers where user='$log'          and password = password('$pas')");
if (
mysql_num_rows($res)>0)
     return 
1;//есть такой пользователь
  
else
     return 
0;//нет 

2.
в MySQL заношу данные так:

insert into writers
values ('test',password('test'),'test')

3.структура таблицы:
CREATE TABLE `writers` (
`user` varchar(80) NOT NULL default '',
`password` varchar(8) NOT NULL default '',
`type` varchar(255) NOT NULL default '',
PRIMARY KEY (`user`)
) TYPE=MyISAM

ввожу в форму test,test,
дебаггером смотрю, что переменные $log и $pas заполняются верно (test и test),но запрос возвращает 0 записей,
почему???

V0iD 05.12.2003 18:38

Попробуй user & password заключить в тильды (MySQL может непрвильно понять...)
$res = mysql_query("select * from writers where `user`='$log' and `password` = password('$pas')");

BiГ 05.12.2003 23:03

На самом деле не надо изменять ничего, кроме длинны столбца 'password'.
PASSWORD('bla-bla-bla') - возвращает 16-символьную строку, а не 8, как здесь стоит в параметре столбца.

Цитата:

CREATE TABLE `writers` (
`user` varchar(80) NOT NULL default '',
`password` varchar(16) NOT NULL default '',
`type` varchar(255) NOT NULL default '',
PRIMARY KEY (`user`)
) TYPE=MyISAM
Можно кнечно еще поопробовать альтернативные ф-ции:
ENCODE()
DECODE()
MD5()
:rolleyes:

RTFM собстна :biggrin:


Часовой пояс GMT +4, время: 05:11.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.