|
|
|
|
|
для: Ivan
(09.06.2006 в 16:51)
| | Зато вы легко сможете редактировать информацию в базе данных - они будет в исходном формате, если текст пропустить через htmlspecialchars() - и редактировать и систему редактирования будет не удобно создавать... | |
|
|
|
|
|
|
|
для: Trianon
(09.06.2006 в 16:18)
| | Так все-таки нужно обрабатывать перед выводом в html ?
Просто это ж будет чуть замедлять скрипт. | |
|
|
|
|
|
|
|
для: Ivan
(09.06.2006 в 16:10)
| | Теги не представляют опасности для базы.
Если Вы выводите текстовые данные в html-страницу, то их надо обрабатывать функцией htmlspecialchars. Это правило должно соблюдаться всегда. Оно не имеет никакого отношения ни к вводу данных из формы, ни к методике их хранения (в базе ли, в файлах, в сессиях или еще где). | |
|
|
|
|
|
|
|
для: cheops
(09.06.2006 в 12:36)
| | ... и тогда полностью в сборе алгоритм?
ведь mysql_escape_string() с тегами ничего не делает - вставляй на здоровье. | |
|
|
|
|
|
|
|
для: cheops
(09.06.2006 в 12:36)
| | Добавлю только, что если нет возможности выключить режим magic_quotes_gpc, то из входных параметров сперва придется убрать экранирующие слэши функцией stripslashes.
Кажущийся идиотизм такого подхода на самом деле обусловлен тем фактом, что в свое время в движок php был воткнут механизм магических кавычек (да еще и включен по-умолчанию) призванный решать схожие (если не те же самые) задачи. Решать он их, естественно, не в состоянии, поскольку никаким волшебным образом невозможно неправильно написанный скрипт сделать защищенным. Вот и приходится сперва выключать, чтоб не мешал, (а если не выключить - устранять последствия), а потом заново проделывать похожую работу, но уже именно там, где надо, и над тем, над чем надо. | |
|
|
|
|
|
|
|
для: Ivan
(09.06.2006 в 07:21)
| | Перед занесением данных из HTML-формы, их следует обрабатывать при помощи конструкции
<?php
if (!get_magic_quotes_gpc())
{
$theme = mysql_escape_string($theme);
$author = mysql_escape_string($author);
$pswrd = mysql_escape_string($pswrd);
$url = mysql_escape_string($url);
$message = mysql_escape_string($message);
}
?>
|
| |
|
|
|
|
|
|
|
для: Ivan
(09.06.2006 в 07:21)
| | mysql_escape_string | |
|
|
|
|
|
|
| Требуется обработать вводимые пользователем через форму данные для последующего занесения в Мускул и возможности текстового поиска.
В этом случае связка htmlspecialchars-stripslashes ведь не будет работать?
Если это так, то хочется разработать наиболее универсальную функцию обработки текста для достижения максимальной безопасности.
Да и, если не изменяет память, где-то в прессе встречал упоминание о недостаточности такого способа обработки.
Вроде надежнее еще и при выводе из базы делать проверочку, но как-то не хочется с этим заморачиваться.
Прошу присутствующих высказываться кто-чего-придумал... | |
|
|
|
|