Экранирование строк

Drakon

Новичок
Экранирование строк

Вопрос такой: как экранировать любую строку, подставляемую в SQL-запрос, например, для сравнения:

SELECT * FROM t1 WHERE value = '$value'

Если там будет какой-нить 'СЃ', то запрос слетает.

Чем это экранировать?
 

Drakon

Новичок
Вот запрос (так выглядит в IE):
select id from visitors_values where watch_id='293' and value='*/*'

Так выглядит, когда приходит на почту:
select id from visitors_values where watch_id='293' and value='СЃ'

С real_escape эффект тот же.

А вот ошибка MySQL:
Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (cp1251_general_ci,COERCIBLE) for operation '='
 

Фанат

oncle terrible
Команда форума
значит, ты неправильно применяешь "real_escape "

Вообще, если ты догадаешься приводить здесь точный код и точное сообщение об ошибке, то, возможно, твоя неразрешимая проблема получит шанс разрешиться.

поскольку проблема твоя исключительно в твоих руках.
И пока ты не покажешь кривой код, ими написанный, никто тебе помочь не сможет.
я доступно объясняю?

-~{}~ 19.08.05 11:39:

о, догадался, наконец.
и при чём здесь экранирование?
 

Drakon

Новичок
Поискал... Не помогло...

Кстати, кодировку я прописываю сразу после коннекта:
mysql_query("SET NAMES 'cp1251'");
mysql_query("SET CHARACTER SET cp1251");

MySQL версии 4.1.10a
 

Апельсин

Оранжевое создание
1. в какой кодировке данные в таблице?
2. проверь кодировку клиента и соединения с
show variables like "character_set%"
 
Сверху