|
|
|
| Собственно в том и вопрос. После того как все слетело, установил, восстановил MySQL. Скопировал свою базу и тут началась фигня. Запрос
select * from user where user_pass=password("123") and user_name="vasya" ;
|
перестал работать. На сервере все работает чудно, а восстановленной локальной машине нет. Измененный запрос
select * from user where user_pass='773359240eb9a1d9' and user_name="vasya" ;
|
проходит.
Еще, при просмотре через phpMyAdmin 2.5.3-rc3 структуры таблицы, выдает
Notice: Undefined index: D in C:\www\localhost\phpadmin\libraries\mysql_charsets.lib.php on line 38
я так полагаю, по кол-ву записей, а после
Warning: Cannot modify header information - headers already sent by (output started at C:\www\localhost\phpadmin\libraries\mysql_charsets.lib.php:38) in C:\www\localhost\phpadmin\libraries\ob.lib.php on line 65
несколько и потом уже отображает саму структуру
В чем мобыть дело ? | |
|
|
|
|
|
|
|
для: larush
(05.06.2006 в 17:34)
| | А вы версию MySQL не меняли? Дело в том, что начиная с MySQL 4.1 изменился формат данных возвращаемых функцией PASSWORD().
PS Если это действительно так и у вас более новая версия, чтобы получить старые значения можно воспользоваться функцией OLD_PASSWORD(). | |
|
|
|
|
|
|
|
для: cheops
(05.06.2006 в 19:21)
| | я переустанавливал все, в том числе и MySQL, так что Ваше предположение верно. Но, моя попытка заменить пароль в новой версии через PHPAdmin не увенчалась успехом
UPDATE 'user' SET 'user_pass' = PASSWORD( '123' ) WHERE 'user_id' = '1' LIMIT 1 ;
Ответ MySQL:
#1406 - Data too long for column 'user_pass' at row 1
Это отчего ? | |
|
|
|
|
|
|
|
для: larush
(06.06.2006 в 08:41)
| | А запрос
select * from user where user_pass=old_password("123") and user_name="vasya" ;
|
работает? | |
|
|
|
|
|
|
|
для: cheops
(06.06.2006 в 10:48)
| | да, таким образом сработал, я же написал, что Ваши мысли относительно версии верны :-) | |
|
|
|
|
|
|
|
для: larush
(06.06.2006 в 11:04)
| | Скорее всего придётся переработать код... Вместо функции PASSWORD() лучше использовать что-то другое, например MD5(), так как PASSWORD() может и в дальнейшем претерпевать изменения и предназначена главным образом для внутреннего испльзования MySQL. | |
|
|
|
|
|
|
|
для: cheops
(06.06.2006 в 11:45)
| | спасибо, буду менять | |
|
|
|