защищают нашу базу от скриптов злоумышленников.
Подскажите пожалуйсто, у меня есть запрос на выборку
SELECT * FROM obiekt WHERE firma = '$vibor_firm'
Так в нем поле firma (тип TEXT) содержит название фирм.
Если оператор ввел название без кавычек например: Мосстрой то выборка проходит успешно.
А если оператор ввел "Мосстрой" то в базу соответственно занеслось
"Мосстрой"
И тут уже выборка не происходит.Подскажите как сделать правильно выборку в данном случае?
Спустя 1 минута, 5 секунд (25.06.2010 - 13:00) kuzroman написал(а):
"Мосстрой"
А & q u o t ; Мосстрой" Спустя 31 секунда (25.06.2010 - 13:01) kuzroman написал(а):
не
"Мосстрой"
"Мосстрой"
а"Мосстрой"
Спустя 4 минуты, 28 секунд (25.06.2010 - 13:05) Lenarfate написал(а):
mysql_real_escape_string ?
Спустя 4 минуты, 43 секунды (25.06.2010 - 13:10) kuzroman написал(а):
Можно пояснить?
Цитата (Lenarfate @ 25.06.2010 - 10:05) |
mysql_real_escape_string ? |
Что конкретно вы имели ввиду?
потому что я понял так:
вместо: mysql_query
поставить: mysql_real_escape_string
что в моем случае не работает.
Я же как новичек спрашиваю вас)
Спустя 4 минуты, 14 секунд (25.06.2010 - 13:14) tomash написал(а):
Функция экранирует специальные символы строки unescaped_string, принимая во внимание кодировку соединения, таким образом, что результат можно безопасно использовать в SQL-запросе в функци mysql_query().
Спустя 57 секунд (25.06.2010 - 13:15) Lenarfate написал(а):
http://php.su/functions/?mysql_real_escape_string
учитесь пользоваться мануалом
учитесь пользоваться мануалом
Спустя 37 секунд (25.06.2010 - 13:16) Lenarfate написал(а):
tomash
не надо было говорить, он должен был сам найти))
не надо было говорить, он должен был сам найти))
Спустя 2 минуты, 15 секунд (25.06.2010 - 13:18) twin написал(а):
Цитата |
stripslashes и htmlspecialchars защищают нашу базу от скриптов злоумышленников. |
Угу. А так же защищают от воров телевизор и туалетная бумага...
Спустя 1 минута, 54 секунды (25.06.2010 - 13:20) kuzroman написал(а):
В таком случае почуму у меня запрос:
не работает только когда в базе находится информация типа
а
Да и что мне делать? избавиться от экранирования во время занесения информации в базу или писать скрипт убирающий экран?
mysql_query ("SELECT * FROM obiekt WHERE firma = '$vibor_firm' ",$db);
не работает только когда в базе находится информация типа
$vibor_firm = "Мосстрой"
а
$vibor_firm = Мосстройработает прекрасно?
Да и что мне делать? избавиться от экранирования во время занесения информации в базу или писать скрипт убирающий экран?
Спустя 1 минута, 59 секунд (25.06.2010 - 13:22) Lenarfate написал(а):
а ты пробуй, и так и так. там и ответ найдется
Спустя 5 минут, 12 секунд (25.06.2010 - 13:27) tomash написал(а):
Спустя 2 минуты (25.06.2010 - 13:29) kuzroman написал(а):
Вы лучше подскажите как мне от
"
избавиться?
потому что в базе у меня хранится инвфа вроде
"Мосстрой"
"
избавиться?
потому что в базе у меня хранится инвфа вроде
"Мосстрой"
Спустя 1 минута, 26 секунд (25.06.2010 - 13:30) tomash написал(а):
kuzroman
Прежде чем использовать функцию, прочитайте что она делает и 98,3% вопросов отпадут
Прежде чем использовать функцию, прочитайте что она делает и 98,3% вопросов отпадут
Спустя 3 минуты, 31 секунда (25.06.2010 - 13:34) kuzroman написал(а):
Цитата (tomash @ 25.06.2010 - 10:30) |
kuzroman Прежде чем использовать функцию, прочитайте что она делает и 98,3% вопросов отпадут |
Вы про какую функцию сейчас говорите?
Про mysql_real_escape_string?
Спустя 1 минута, 37 секунд (25.06.2010 - 13:36) Lenarfate написал(а):
Цитата (tomash @ 25.06.2010 - 14:27) |
kuzroman http://phpforum.ru/index.php?showtopic=21213 |
чувак, просто почитай то, что тебе посоветовали)
Спустя 23 секунды (25.06.2010 - 13:36) tomash написал(а):
kuzroman
Обо всех функциях которые используються в коде
Обо всех функциях которые используються в коде
Спустя 22 минуты, 50 секунд (25.06.2010 - 13:59) seine написал(а):
Цитата (tomash @ 25.06.2010 - 10:30) |
98,3% вопросов отпадут |
Откуда такая точность?
![smile.gif](http://phpforum.ru/html/emoticons/smile.gif)
kuzroman, я не понял, у тебя в базе хранятся записи типа "Мосстрой" , а ты хочешь чтоб там хранилось просто Мосстрой?
Если так, то при добавлении в базу удаляй кавычки и всего делов. Или я что-то не так понял?
Спустя 6 минут, 52 секунды (25.06.2010 - 14:06) tomash написал(а):
seineу
Цитата (seine @ 25.06.2010 - 10:59) |
Цитата (tomash @ 25.06.2010 - 10:30) 98,3% вопросов отпадут Откуда такая точность? smile.gif |
Установлено опытным путем)
Спустя 2 минуты, 37 секунд (25.06.2010 - 14:08) kuzroman написал(а):
Как говорится клин клином вышибают помогло:
$firm=$_POST['vibor_firm'];
$result3 = mysql_query("SELECT * FROM obiekt
WHERE firma = '$vibor_firm' ",$db);
)))
$firm=$_POST['vibor_firm'];
$vibor_firm = htmlspecialchars($firm);
$result3 = mysql_query("SELECT * FROM obiekt
WHERE firma = '$vibor_firm' ",$db);
)))
Спустя 1 минута, 31 секунда (25.06.2010 - 14:10) Lenarfate написал(а):
Спустя 17 минут, 10 секунд (25.06.2010 - 14:27) tomash написал(а):
Lenarfate
Ужоснах! Откуда они приходят?
Ужоснах! Откуда они приходят?
Спустя 50 секунд (25.06.2010 - 14:28) Lenarfate написал(а):
кто приходит
![biggrin.gif](http://phpforum.ru/html/emoticons/biggrin.gif)
Спустя 9 минут, 29 секунд (25.06.2010 - 14:37) tomash написал(а):
Lenarfate
Пришел, спросил, получил ответ, сделал неправильно по-своему и доволен
Пришел, спросил, получил ответ, сделал неправильно по-своему и доволен
Спустя 4 минуты, 45 секунд (25.06.2010 - 14:42) Lenarfate написал(а):
а!ыгы
![biggrin.gif](http://phpforum.ru/html/emoticons/biggrin.gif)
Спустя 2 дня, 19 часов, 30 минут, 30 секунд (28.06.2010 - 10:13) kuzroman написал(а):
Да спасибо гуру, сижу и оптекаю весь)
Вы уж извините, может просто у меня получается чаще отвечать на вопрос, после ее постановки на форуме)
Ну сделал и сделал, все равно всем спасибо.
Вы уж извините, может просто у меня получается чаще отвечать на вопрос, после ее постановки на форуме)
Ну сделал и сделал, все равно всем спасибо.
Спустя 14 минут, 25 секунд (28.06.2010 - 10:27) tomash написал(а):
kuzroman
Неправильно ответил)))) функция htmlspecialchars не защищает от атак! Она скорее предназначена для корректного вывода!
Для защиты используют mysql_real_escape_string, ограничение количества символов для ввода, проверка регулярными выражениями! ))) и т.д. и т.п
Неправильно ответил)))) функция htmlspecialchars не защищает от атак! Она скорее предназначена для корректного вывода!
Для защиты используют mysql_real_escape_string, ограничение количества символов для ввода, проверка регулярными выражениями! ))) и т.д. и т.п
_____________
kuzroman@list.ru