Задавайте вопросы, мы ответим
Вы не зашли.
Есть такой запрос
SELECT * FROM obiekt WHERE firma = '$vibor_firm'
Поле firma(тип TEXT) содержит названия фирм, причем если фирма указана без кавычек "" например : Мосстрой
то выборка происходит нормально, а если там "Мосстрой" то не выводит ничего.
Подскажите решение на mysql или в php ?
Отредактированно kuzroman (25.06.2010 13:50:15)
Неактивен
WHERE firma = 'Мосстрой' OR firma = '\"Мосстрой\"'.
Ну и лучше таки заменить на VARCHAR().
Неактивен
paulus написал:
WHERE firma = 'Мосстрой' OR firma = '\"Мосстрой\"'.
Ну и лучше таки заменить на VARCHAR().
Так что то не пойму. У меня стоит переменная $vibor_firm
а не конкретная фирма. запись типа WHERE firma = '$vibor_firm' OR firma = '\$vibor_firm\' не пройдет, т.к.
после обработки получается \"Мосстрой"\ что не подходит.
Неактивен
Ну, Вы попробуйте, все-таки?
Неактивен
Не братишка не работает.
Неактивен
[celestia] root test > select * from f; +--------+ | f | +--------+ | blah | | "blah" | | "foo" | | foo | | bar | +--------+ 5 rows in set (0.00 sec) [celestia] root test > select * from f where f = '\"foo\"' or f = 'foo'; +-------+ | f | +-------+ | "foo" | | foo | +-------+ 2 rows in set (0.00 sec)
Неактивен
Ладно Спасибо.
подышал свежим воздухом и дошло)) Сделал так
if (isset($_POST['vibor_firm']) ) {
$firm=$_POST['vibor_firm'];
$vibor_firm = htmlspecialchars($firm);
$result3 = mysql_query("SELECT * FROM obiekt
WHERE cat_men2='$cat_men2' && vipolnen='' && firma = '$vibor_firm' ",$db);
$myrow3 = mysql_fetch_array($result3);
В общем $vibor_firm = htmlspecialchars($firm); вот это я и искал)))
Ну как говориться клин клином вышибают))
Неактивен
Таки addslashes().
Неактивен