[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Экранирование запросов
JohnBraxton
Всем доброго времени суток! В база ("которая мне досталась по наследству") очень много текста содержащий символы ' & и т.п.

Строки с такими значениями не удаляются (разумеется и не редактируются) подскажите как правильно написать запрос на удаление?
Michael
mysql_real_escape_string используете?

_____________
There never was a struggle in the soul of a good man that was not hard
JohnBraxton
Цитата (Michael @ 28.03.2013 - 10:54)
mysql_real_escape_string используете?

Выглядит это так:
$title= mysql_real_escape_string($title);


далее пытаюсь удалить

$result = mysql_query("DELETE FROM table WHERE title='$title'");

Michael
Ну значит совпадений нет. Может при сохранении было искажено чем то типа htmlspecialchars.
Текст сформированного запроса через phpmyadmin выполните и увидите если не удалило в чем разница этой поисковой строки с имеющейся в БД.

_____________
There never was a struggle in the soul of a good man that was not hard
JohnBraxton
Цитата (Michael @ 28.03.2013 - 11:04)
Ну значит совпадений нет. Может при сохранении было искажено чем то типа htmlspecialchars.
Текст сформированного запроса через phpmyadmin выполните и увидите если не удалило в чем разница этой поисковой строки с имеющейся в БД.

Так из базы то выводиться и в phpmyadmin текст есть..
Michael
Цитата (JohnBraxton @ 28.03.2013 - 13:30)
Цитата (Michael @ 28.03.2013 - 11:04)
Ну значит совпадений нет. Может при сохранении было искажено чем то типа htmlspecialchars.
Текст сформированного запроса через phpmyadmin выполните и увидите если не удалило в чем разница этой поисковой строки с имеющейся в БД.

Так из базы то выводиться и в phpmyadmin текст есть..

покажите вот этот код, которым выводится.

_____________
There never was a struggle in the soul of a good man that was not hard
dron4ik
А пользователь имеет права на удаление?

_____________
Ex3m.com.ua — Активный образ жизни
JohnBraxton
Цитата (dron4ik @ 28.03.2013 - 13:30)
А пользователь имеет права на удаление?

Да, имеет...
JohnBraxton
Цитата (Michael @ 28.03.2013 - 12:24)
Цитата (JohnBraxton @ 28.03.2013 - 13:30)
Цитата (Michael @ 28.03.2013 - 11:04)
Ну значит совпадений нет. Может при сохранении было искажено чем то типа htmlspecialchars.
Текст сформированного запроса через phpmyadmin выполните и увидите если не удалило в чем разница этой поисковой строки с имеющейся в БД.

Так из базы то выводиться и в phpmyadmin текст есть..

покажите вот этот код, которым выводится.

Блин... полный бред... Я остановил обработчик во время получения переменной что бы посмотреть что он получает (echo), оказалось... Переменная передается не полностью.

Вывод в форму:
echo $title;
<
a href='dll_upload.php?title=$title'>удалить</a>


В форму выводиться нормально - "John & Jack удалить"
Передаю методом GET в обработчик и смотрю что он получает, а получает он только - "John" поэтому то он и не может найти в базе строку с этим значением. Вопрос почему так происходит если я не использую экранизатор?
Michael
Знак & служит для разделения get параметров.
Напиши перед выводом
$title = urlencode($title);


_____________
There never was a struggle in the soul of a good man that was not hard
JohnBraxton
Цитата (Michael @ 29.03.2013 - 05:39)
Знак & служит для разделения get параметров.
Напиши перед выводом
$title = urlencode($title);

Блин! точно! и как я сам не допер!?! Спасибо!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.