Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> функционал LIKE при сохранении безопасности 
V
    Опции темы
bars80080
Дата 24.11.2009, 12:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 9
Всего: 315



Хочу дать возможность пользователю писать формат поиска, который подставляется для текстовых полей после оператора LIKE и RLIKE:

... WHERE `field` LIKE "some"
... WHERE `field` RLIKE "some"

то есть, вот это some. чем обработать приходящую строку, чтобы не получилось ничего более поиска?
хватит ли mysql_real_escape_string()?
но ведь в строке могут быть служебные символы, типа \t и \\

или это уже само по определению всё отдаётся на совесть пользователя?
PM MAIL WWW   Вверх
MoLeX
Дата 24.11.2009, 14:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 7
Всего: 140



Цитата(bars80080 @  24.11.2009,  12:44 Найти цитируемый пост)
или это уже само по определению всё отдаётся на совесть пользователя? 

 smile

Добавлено через 1 минуту и 3 секунды
хотя можно сделать через select


--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
bars80080
Дата 24.11.2009, 15:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 9
Всего: 315



Цитата(MoLeX @  24.11.2009,  13:18 Найти цитируемый пост)
хотя можно сделать через select 

в смысле? этот хвост ... WHERE `field` LIKE "some" - конец запроса select

пользователь сможет править только слово some
PM MAIL WWW   Вверх
MoLeX
Дата 24.11.2009, 15:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 7
Всего: 140



тьфу ты. я думал что LIKE

Цитата(bars80080 @  24.11.2009,  12:44 Найти цитируемый пост)
хватит ли mysql_real_escape_string()?

вполне



--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
skyboy
Дата 24.11.2009, 15:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 14
Всего: 260



Цитата(bars80080 @  24.11.2009,  11:44 Найти цитируемый пост)
хватит ли mysql_real_escape_string()?

да.
Цитата(bars80080 @  24.11.2009,  11:44 Найти цитируемый пост)
но ведь в строке могут быть служебные символы, типа \t и \\

ну, и пусть ищет "\t" или два слеша в тексте. mysql_real_escape_string, думаешь, только кавычки проэкранирует?
PM MAIL   Вверх
bars80080
Дата 24.11.2009, 15:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 9
Всего: 315



не, но фиг знает, каковы особенности национального mysql`я
PM MAIL WWW   Вверх
nerezus
Дата 27.11.2009, 02:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вселенский отказник
****


Профиль
Группа: Участник
Сообщений: 3330
Регистрация: 15.6.2005

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





--------------------
Сообщество художников Artsociety.ru
PM MAIL WWW   Вверх
bars80080
Дата 27.11.2009, 10:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 9
Всего: 315



Цитата(nerezus @  27.11.2009,  01:41 Найти цитируемый пост)
http://php.net/mysql_real_escape_string 

это уточнение или повторение?

или это
Цитата

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.
 
значит что-то большее, чем сказали вышеговорившие?
PM MAIL WWW   Вверх
Ипатьев
Дата 27.11.2009, 11:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 3
Всего: 37



строго говоря, в лайк надо слешить бэкслеш дважды
только я не очень помню, это для безопасности, или чтобы он не терялся
PM MAIL   Вверх
saveug
Дата 27.11.2009, 11:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 23.9.2009

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



Я бы порекомендовал делать поиск через FULLTEXT индексы, LIKE сильно тормозит
PM MAIL   Вверх
bars80080
Дата 27.11.2009, 12:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 9
Всего: 315



Цитата(saveug @  27.11.2009,  10:40 Найти цитируемый пост)
Я бы порекомендовал делать поиск через FULLTEXT индексы, LIKE сильно тормозит 

имеется ввиду прописывать в таблицу индексы?

нет, здесь имеется в виду примитивная фильтрация на базе неожиданно возникшего желания клиента. то есть это не система поиска.

Цитата(Ипатьев @  27.11.2009,  10:38 Найти цитируемый пост)
строго говоря, в лайк надо слешить бэкслеш дважды
только я не очень помню, это для безопасности, или чтобы он не терялся 

ну, вот теперь я опять в загадках. первые два респондента ответили, что всё тип-топ. а с ваших постов я даже не знаю в какую сторону бежать
PM MAIL WWW   Вверх
Ипатьев
Дата 27.11.2009, 12:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 3
Всего: 37



в документацию?
PM MAIL   Вверх
bars80080
Дата 27.11.2009, 12:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 9
Всего: 315



дык, по ссылке nerezus уже сходил. моё понимание дальше не пошло
PM MAIL WWW   Вверх
nerezus
Дата 27.11.2009, 12:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вселенский отказник
****


Профиль
Группа: Участник
Сообщений: 3330
Регистрация: 15.6.2005

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



Цитата

это уточнение или повторение?
 Ито источник ответа.
Там написано, что \ экранируется, а \t нет(и не должен).

Цитата

только я не очень помню, это для безопасности, или чтобы он не терялся
 Чтобы правильно соответствовать данным: \_ \% в запросе вместо _ и % в данных.

Цитата

а с ваших постов я даже не знаю в какую сторону бежать
 Прочитать данные по моей ссылке


--------------------
Сообщество художников Artsociety.ru
PM MAIL WWW   Вверх
Ипатьев
Дата 27.11.2009, 12:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 3
Всего: 37



нет, я говорил о бэкслеше, а не о метасимволах
но, кажется, это чтобы он не терялся, так что проблемы большой не будет
PM MAIL   Вверх
Pitlord
Дата 27.11.2009, 18:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 246
Регистрация: 31.10.2009

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



mysql_real_escape_string() всегда должен быть для корректного формирования строки в SQL-запросе, с безопасностью это никак не связано.

Сам паттерн LIKE'а тоже содержит спец. символы: "%", "_", "\"  Но не имеет смысла их экранировать в данной ситуации, поскольку тогда пропадает смысл LIKE. Или используй просто "=".

Добавлено через 2 минуты и 52 секунды
Хотя иногда делают так:
Код

<?php

function like_pattern_escape($s)
{
    return addCslashes($s, '\\_%');
}

$es = mysql_real_escape_string(like_pattern_escape($s));
$query = "SELECT ... `s` LIKE '%{$es}%';";

?>


Это сообщение отредактировал(а) Pitlord - 27.11.2009, 18:27
PM MAIL   Вверх
bars80080
Дата 27.11.2009, 18:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 9
Всего: 315



Цитата(Pitlord @  27.11.2009,  17:26 Найти цитируемый пост)
 "%", "_", "\"

да, такие символы нужны


Цитата(Pitlord @  27.11.2009,  17:26 Найти цитируемый пост)
Хотя иногда делают так

честно говоря, это "иногда" убивает. 

вопрос же простой, если приходящую строку, которую впоследствии подставлю после LIKE, буду обрабатывать только mysql_real_escape_string(), этого хватит, чтобы пользователь не набедокурил?
/подставляться будет только в запросе select/

в смысле, чтобы он не вырвался за пределы запроса и не добавил какое-нибудь drop ... и т.п.

в документации что-то написано про енту замену слэшей. касательно моего вопроса я могу сделать вывод только, что всё будет в порядке.
из ваших постов после Скайбоя не понятно. то ли делай двойной mysql_real_escape_string, то ли не делай

истина где-то рядом, но к какой подошве она у меня прилипла?
PM MAIL WWW   Вверх
Pitlord
Дата 27.11.2009, 18:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 246
Регистрация: 31.10.2009

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



Цитата(bars80080 @  27.11.2009,  18:39 Найти цитируемый пост)
вопрос же простой, если приходящую строку, которую впоследствии подставлю после LIKE, буду обрабатывать только mysql_real_escape_string(), этого хватит, чтобы пользователь не набедокурил?

Слабо в мануал по MySQL глянуть, а не PHP (хотя и туда ты тоже не особо захаживаешь похоже)? 

Цитата(bars80080 @  27.11.2009,  18:39 Найти цитируемый пост)
в смысле, чтобы он не вырвался за пределы запроса и не добавил какое-нибудь drop ... и т.п.

Налицо отсутствие понимания того, что ты делаешь такими функциями, как mysql_real_escape_string, htmlspecialchars, urlencode и пр.

Цитата(bars80080 @  27.11.2009,  18:39 Найти цитируемый пост)
в документации что-то написано про енту замену слэшей. касательно моего вопроса я могу сделать вывод только, что всё будет в порядке.
из ваших постов после Скайбоя не понятно. то ли делай двойной mysql_real_escape_string, то ли не делай

Если кратко, то если бекслеш не экранировать, то это позволит пользователю искать символы "%" и "_". Если экранировать — они будут фигурировать только в качестве спец. символов LIKE и не более.

Это сообщение отредактировал(а) Pitlord - 27.11.2009, 18:55
PM MAIL   Вверх
Ипатьев
Дата 27.11.2009, 18:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 3
Всего: 37



Цитата(Pitlord @  27.11.2009,  18:54 Найти цитируемый пост)
Если кратко, то если бекслеш не экранировать, то это позволит пользователю искать символы "%" и "_". Если экранировать — они будут фигурировать только в качестве спец. символов LIKE и не более.

мне кажется, это заблуждение.
PM MAIL   Вверх
Pitlord
Дата 27.11.2009, 19:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 246
Регистрация: 31.10.2009

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



Цитата(Ипатьев @  27.11.2009,  18:59 Найти цитируемый пост)
мне кажется, это заблуждение. 

Тебе что-то кажется, а я просто знаю.

Добавлено через 1 минуту и 3 секунды
Хотите разговаривать по сути — приводите примеры. У вас же просто танцы с бубном вокруг темы экранирования символов. "Надо или не надо экранировать?"
PM MAIL   Вверх
Ипатьев
Дата 27.11.2009, 19:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 3
Всего: 37



Насколько я вижу в документации, там ничего не написано про символы "%" и "_" в связи с рекомендацией экранировать слеш
PM MAIL   Вверх
bars80080
Дата 27.11.2009, 19:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 9
Всего: 315



Цитата(Pitlord @  27.11.2009,  17:54 Найти цитируемый пост)
Слабо в мануал по MySQL глянуть, а не PHP (хотя и туда ты тоже не особо захаживаешь похоже)? 
по этому поводу уже говорил выше

Цитата(Pitlord @  27.11.2009,  17:54 Найти цитируемый пост)
Налицо отсутствие понимания того, что ты делаешь такими функциями, как mysql_real_escape_string, htmlspecialchars, urlencode и пр.

спасибо, за замечание


Цитата(Pitlord @  27.11.2009,  17:54 Найти цитируемый пост)
Если кратко, то если бекслеш не экранировать, то это позволит пользователю искать символы "%" и "_". Если экранировать — они будут фигурировать только в качестве спец. символов LIKE и не более.

ну, и страшно, что они будут искать эти самые символы?


Цитата(Pitlord @  27.11.2009,  18:06 Найти цитируемый пост)
Хотите разговаривать по сути — приводите примеры. У вас же просто танцы с бубном вокруг темы экранирования символов. "Надо или не надо экранировать?"

пример? что угодно. я не знаю, на какую комбинацию пробьёт пользователя
PM MAIL WWW   Вверх
Pitlord
Дата 27.11.2009, 19:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 246
Регистрация: 31.10.2009

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



Цитата(Ипатьев @  27.11.2009,  19:38 Найти цитируемый пост)
Насколько я вижу в документации, там ничего не написано про символы "%" и "_" в связи с рекомендацией экранировать слеш 

В какой документации? Экранировать для чего — интерпретации строки в SQL-запросе, интерпретации паттерна LIKE?

Цитата(bars80080 @  27.11.2009,  19:52 Найти цитируемый пост)
ну, и страшно, что они будут искать эти самые символы?

Это ты себе вопрос задай, я тебе просто сказал что будет если экранировать и что — если нет.

Цитата(bars80080 @  27.11.2009,  19:52 Найти цитируемый пост)
пример?

Я не тебе в данном случае говорил. Тебе просто курить мануал:
http://dev.mysql.com/doc/refman/5.0/en/str...l#operator_like
http://dev.mysql.com/doc/refman/5.0/en/string-syntax.html
PM MAIL   Вверх
Ипатьев
Дата 27.11.2009, 20:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 3
Всего: 37



По ссылке написано про экранирование "%" и "_"
А я говорил про экранирование "\".
Которое никак с первым не связано
PM MAIL   Вверх
Pitlord
Дата 27.11.2009, 20:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 246
Регистрация: 31.10.2009

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



Цитата(Ипатьев @  27.11.2009,  20:07 Найти цитируемый пост)
По ссылке написано про экранирование "%" и "_" А я говорил про экранирование "\".


Цитата

To test for literal instances of a wildcard character, precede it by the escape character. If you do not specify the ESCAPE character, “\” is assumed. 


Код

CREATE TABLE `testtable` (
`s` VARCHAR( 100 ) NOT NULL
);

INSERT INTO `testtable` ( `s` )
VALUES (
'\\%'
);

Попробуй с помощью LIKE, без использования "%" и "_" в качестве спец. символов, найти строку с записью "\%".
PM MAIL   Вверх
Ипатьев
Дата 27.11.2009, 20:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 3
Всего: 37



и то и другое надо экранировать, но слеш - дважды.

PM MAIL   Вверх
bars80080
Дата 27.11.2009, 20:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 9
Всего: 315



Цитата(Pitlord @  27.11.2009,  18:59 Найти цитируемый пост)
Это ты себе вопрос задай, я тебе просто сказал что будет если экранировать и что — если нет.

зачем просто говорить, если можно просто ответить?


Цитата(Pitlord @  27.11.2009,  18:59 Найти цитируемый пост)
Я не тебе в данном случае говорил. Тебе просто курить мануал:
http://dev.mysql.com/doc/refman/5.0/en/str...l#operator_like
http://dev.mysql.com/doc/refman/5.0/en/string-syntax.html 

не курю. мануалы я читаю. 
прочитал, ничего нового не узнал. и всё равно, совершенно не догоняю, что после поста Скайбоя вы мне пытаетесь втолковать. по ссылкам написано, что никакая последовательность символов не может выйти за пределы строки, если она была преобразована с помощью mysql_real_escape_string().
PM MAIL WWW   Вверх
Pitlord
Дата 27.11.2009, 20:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 246
Регистрация: 31.10.2009

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



Цитата(Ипатьев @  27.11.2009,  20:35 Найти цитируемый пост)
и то и другое надо экранировать, но слеш - дважды.

Ну вот, теперь правильно.

По-хорошему, должно быть так:
Код

SELECT @a := '\\%', @b := '\\\\\\%', @a LIKE @b -- Вернёт "1"


Но будет работать и так:
Код

SELECT @a := '\\%', @b := '\\\\\%', @a LIKE @b -- Вернёт "1"

...., но это запутывает.

Проверить, что мы не соврали можно, заменив "%" на "_":
Код

SELECT @a := '\\%', @b := '\\\\\\_', @a LIKE @b -- Вернёт "0"


Добавлено через 1 минуту и 55 секунд
bars80080, короче, с безопасностью это никак не связано. Применил mysql_real_escape_string() — будет синтаксически корректная строка, ошибок не будет. "Вылезти" куда-то там нельзя.
PM MAIL   Вверх
Ипатьев
Дата 27.11.2009, 20:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 3
Всего: 37



Цитата(Pitlord @  27.11.2009,  20:41 Найти цитируемый пост)
Ну вот, теперь правильно.

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

Это сообщение отредактировал(а) Ипатьев - 27.11.2009, 20:48
PM MAIL   Вверх
Pitlord
Дата 27.11.2009, 20:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 246
Регистрация: 31.10.2009

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



Цитата(Ипатьев @  27.11.2009,  20:44 Найти цитируемый пост)
если мы ищем его одного, без %, то все равно дважды

Я что, говорю что-то противоположное?
PM MAIL   Вверх
bars80080
Дата 27.11.2009, 20:49 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 9
Всего: 315



Цитата(Pitlord @  27.11.2009,  19:41 Найти цитируемый пост)
короче, с безопасностью это никак не связано. Применил mysql_real_escape_string() — будет синтаксически корректная строка, ошибок не будет. "Вылезти" куда-то там нельзя. 

мля. тогда вопрос в первую очередь к nerezus, зачем было вводить в заблуждение?
второй вопрос к Ипатьев, почему было не ответить на вполне простой вопрос, а специально запутывать?
третий вопрос к Pitlord тот же что и к Ипатьеву
PM MAIL WWW   Вверх
Ипатьев
Дата 27.11.2009, 20:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 3
Всего: 37



Цитата(Pitlord @  27.11.2009,  20:47 Найти цитируемый пост)
Я что, говорю что-то противоположное? 

Ну, да.
фразу
Цитата(Pitlord @  27.11.2009,  18:54 Найти цитируемый пост)
Если кратко, то если бекслеш не экранировать, то это позволит пользователю искать символы "%" и "_". Если экранировать — они будут фигурировать только в качестве спец. символов LIKE и не более.

лично я понимаю так, что слеш надо экранировать для того, чтобы позволить пользователю искать символы "%" и "_"
а на самом деле двойное экранирование слеша и поиск символов "%" и "_" никак между собой не связаны


Это сообщение отредактировал(а) Ипатьев - 27.11.2009, 20:51
PM MAIL   Вверх
Pitlord
Дата 27.11.2009, 20:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 246
Регистрация: 31.10.2009

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



Цитата(bars80080 @  27.11.2009,  20:49 Найти цитируемый пост)
почему было не ответить на вполне простой вопрос, а специально запутывать?

Ты сам себя запутал. Нас запутал. А мы виноваты.
PM MAIL   Вверх
bars80080
Дата 27.11.2009, 20:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 9
Всего: 315



Цитата(Pitlord @  27.11.2009,  19:53 Найти цитируемый пост)
Ты сам себя запутал. Нас запутал. А мы виноваты. 

я задал вопрос, а затем его уточнил по просьбе Молекса. он и Скайбой меня поняли. ответили. всё ОК.

что началось потом?
PM MAIL WWW   Вверх
Pitlord
Дата 27.11.2009, 21:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 246
Регистрация: 31.10.2009

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



Цитата(bars80080 @  24.11.2009,  12:44 Найти цитируемый пост)
но ведь в строке могут быть служебные символы, типа \t

Тебя поправили, сказав, что табуляция не превращается в "\" и "t" после mysql_real_escape_string().

Ипатьев, конечно, пусть сам объясняет свою фразу о двойном экранировании.
PM MAIL   Вверх
Ипатьев
Дата 27.11.2009, 21:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 3
Всего: 37



Она не моя. Она из документации  smile 
PM MAIL   Вверх
Pitlord
Дата 27.11.2009, 22:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 246
Регистрация: 31.10.2009

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



Цитата(Ипатьев @  27.11.2009,  21:53 Найти цитируемый пост)
Она не моя. Она из документации

А к чему эта фраза-то? Заставить пользователя почитать мануал перед поиском?
PM MAIL   Вверх
Страницы: (3) [Все] 1 2 3 
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Базы Данных | Следующая тема »


 




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


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

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