Модераторы: skyboy
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Что вырезать из запроса 
:(
    Опции темы
Lan
Дата 14.3.2006, 13:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 159
Регистрация: 12.3.2004
Где: Владимир

Репутация: нет
Всего: 1



Пользователь передал мне какие-то данные. Я их передаю в БД. Заключаю в запросе их в обычные одинарные кавычки (') Что из них вырезать?

Эти самые одинарные кавычки, двойные кавычки. Что ещё? Минусики?

P.S. тему подобную посмотрел - не нашёл.
P.P.S. или мне смотреть документацию к MySQL, раздел "безопасность"? smile
Добавлено @ 13:35
P.P.P.S. Может ещё знает кто, в Perl DBI есть метод quote. Он делает как раз то, что надо. Но может ещё что-то надо?
PM ICQ   Вверх
Secandr
Дата 14.3.2006, 13:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Связист
****


Профиль
Группа: Экс. модератор
Сообщений: 4043
Регистрация: 3.8.2003
Где: Russia, Volgograd

Репутация: 6
Всего: 39



Ты же потом это чудо в html вставлять будешь?
Тогда проще заменить ' и на всякий случай " на их код вида: &XXXX;


--------------------
Мышки плакали, кололись, но продолжали жрать кактусы (с) cisco
PM ICQ AOL   Вверх
Lan
Дата 14.3.2006, 14:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 159
Регистрация: 12.3.2004
Где: Владимир

Репутация: нет
Всего: 1



Ну да, ну да. Я не вырезаю, я заменяю на
Код
"

Добавлено @ 14:09
и для ' соответственно
PM ICQ   Вверх
Kesh
Дата 14.3.2006, 17:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Эксперт
Сообщений: 2488
Регистрация: 31.7.2002
Где: Германия, Saarbrü cken

Репутация: 15
Всего: 54



Lan, откуда передал-то...


--------------------
user posted image
PM MAIL WWW ICQ Skype   Вверх
Darhazer
Дата 14.3.2006, 17:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 429
Регистрация: 28.9.2005
Где: HellCity (Sofia, Bulgaria)

Репутация: 4
Всего: 29



Несколько месецов назад я встретил вот такой код:

Код

function DBEscape($string)
{
if (!function_exists("mysql_escape_string"))  {
    $string = str_replace("\\","\\\\",$string);
    $string = str_replace("\0",'\0',$string);
    $string = str_replace("\n",'\n',$string);
    $string = str_replace("\r",'\r',$string);
    $string = str_replace("'",'\\\'',$string);
    $string = str_replace("\"",'\"',$string);
    $string = str_replace("\032","\\Z",$string);

    return $string;
  }
else {
    return mysql_escape_string($string);
}
}


Я досих пор его пользую, и проблем не били
А иначе делал просто addslashes($string)

P.S.
Цитата
mysql_real_escape_string() calls MySQL's library function mysql_real_escape_string, which prepends backslashes to the following characters: \x00, \n, \r, \, ', " and \x1a.


Я все это показиваю просто чтоб увидеть что вырезивають из запроса PHP программисти

Это сообщение отредактировал(а) Darhazer - 14.3.2006, 17:52


--------------------
I'm a wheel, I'm a wheel, I can roll, I can feel
But you can't stop me turning
'Cause I'm the sun, I'm the sun, I can move, I can run
But you'll never stom me burning
PM MAIL WWW ICQ YIM   Вверх
Secandr
Дата 14.3.2006, 17:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Связист
****


Профиль
Группа: Экс. модератор
Сообщений: 4043
Регистрация: 3.8.2003
Где: Russia, Volgograd

Репутация: 6
Всего: 39



Lan, " идеальное решение. Вообще кавычек нет в тексте smile


--------------------
Мышки плакали, кололись, но продолжали жрать кактусы (с) cisco
PM ICQ AOL   Вверх
Lan
Дата 15.3.2006, 06:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 159
Регистрация: 12.3.2004
Где: Владимир

Репутация: нет
Всего: 1



Цитата(Kesh @ 14.3.2006, 17:08)
Lan, откуда передал-то...

Из формы на странице, например. А может и не совсем из формы, а терминалом. smile
Добавлено @ 06:35
Цитата
mysql_real_escape_string() calls MySQL's library function mysql_real_escape_string, which prepends backslashes to the following characters: \x00, \n, \r, \, ', " and \x1a.

Кажется, это ОНО.
Немного непонятно, зачем только \n и \r. И что это за 1a символ... Но если разработчики MySQL'я рекомендуют, то...
PM ICQ   Вверх
Darhazer
Дата 15.3.2006, 13:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 429
Регистрация: 28.9.2005
Где: HellCity (Sofia, Bulgaria)

Репутация: 4
Всего: 29



\x1a = ASCI(26) = Ctrl+Z ( или \Z)


--------------------
I'm a wheel, I'm a wheel, I can roll, I can feel
But you can't stop me turning
'Cause I'm the sun, I'm the sun, I can move, I can run
But you'll never stom me burning
PM MAIL WWW ICQ YIM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MySQL | Следующая тема »


 




[ Время генерации скрипта: 0.0713 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.