Forum Webscript.Ru

Программирование => PHP => Тема начата: scalpel от 18 Августа 2006, 13:31:35

Название: select * from
Отправлено: scalpel от 18 Августа 2006, 13:31:35
Здавствуйте.
Создана таблица в базе данных:
        create table user(id int unsigned primary key not null  
        auto_increment unique key,
        login varchar(10) binaty not null,
        password varchar(10) not null,
        date_reg date not null, и т.д.
       
Выбираю из базы данных:
       $query_str = "select * from user where login=$login";
   $result = mysql_query($query_str);
и почемуто если в переменной $login хранится цифры все работает хорошо, а если русские или английские буквы то результат $result равен NULL, может это с кодировками косяк? Помогите чем можете..
Название: select * from
Отправлено: vasa_c от 18 Августа 2006, 13:52:09
А чего ты хотел?

$query_string = \'select * from `user` where `login`="\'.mysql_escape_string( $login ).\'"\';

И что такое binaty not null?
Название: select * from
Отправлено: scalpel от 18 Августа 2006, 14:37:21
Спасибо, заработало!
Название: select * from
Отправлено: scalpel от 18 Августа 2006, 14:41:35
Только я не понял в чем фишка. синтаксис чтоли не правильный был?
Название: select * from
Отправлено: vasa_c от 18 Августа 2006, 14:43:47
Во что надо заключать строки?

Так же советую пользоваться mysql_escape_string (http://www.php.net/mysql_escape_string)