Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как фильтровать URL при помещении их в базу данных
 
 автор: Адоп Акробат   (25.09.2004 в 22:54)   письмо автору
 
 

Здравствуйте вот у меня такая штука.
Камне на сайт могут добовлять ссылки (url) но как их филтровать если оставить без
филтрации то могут очень нагадеть а если филтровать то как?? я проктичеси все
филтрую вот так

$_REQUEST["from"] = htmlspecialchars("$_REQUEST[from]", ENT_QUOTES);

Но мне кажетса это не очень потходящий способ для фильтровании ссылок

   
 
 автор: cheops   (25.09.2004 в 23:04)   письмо автору
 
   для: Адоп Акробат   (25.09.2004 в 22:54)
 

Хм... по какому признаку вы хотите их фильтровать? Или имеется ввиду проверка на корректность...

   
 
 автор: Адоп Акробат   (26.09.2004 в 02:18)   письмо автору
 
   для: cheops   (25.09.2004 в 23:04)
 

Ну да допустим " (кавычки)

   
 
 автор: cheops   (26.09.2004 в 09:34)   письмо автору
 
   для: Адоп Акробат   (26.09.2004 в 02:18)
 

Хм... я обычно над кавычками голову не ломаю, просто заменяю их чем-нибудь подходящим... их можно либо экранировать:
<?php
  $_REQUEST
['from'str_replace("'","\'",$_REQUEST['from']);
  
$_REQUEST['from'str_replace('"',"\"",$_REQUEST['from']);
?>

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

http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=382&page=1

   
 
 автор: Адоп Акробат   (26.09.2004 в 15:49)   письмо автору
 
   для: cheops   (26.09.2004 в 09:34)
 

Я решил воспользоватса addslasher() и stripslasher

   
 
 автор: LimP   (26.09.2004 в 16:58)   письмо автору
 
   для: Адоп Акробат   (26.09.2004 в 15:49)
 

еще советую проверять на наличие мата вот таким образом
$search_bad_words = array("'хуй'si","'пизд'si","'ёб'si",
                            "'сука'si","'суки'si","'дроч'si","'хуя'si","'ссуч'si");
    $replace = array("*","*","*","*","*","*","*","*");
    $msg = preg_replace($search_bad_words,$replace,$msg);
    $name = preg_replace($search_bad_words,$replace,$name);
    $city = preg_replace($search_bad_words,$replace,$city); 

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

   
 
 автор: Кузнецов М.В.   (26.09.2004 в 17:17)   письмо автору
 
   для: LimP   (26.09.2004 в 16:58)
 

С матом не все так тривиально. Более-менее корректно это можно сделать только создав приличный словарь матерных слов, поскольку их в русском языке, к счастью, не мало. Но приличный словарь крепко замедлит время исполнения скрипта, а маленький практически ничего не даст.

   
 
 автор: Адоп Акробат   (26.09.2004 в 18:06)   письмо автору
 
   для: Кузнецов М.В.   (26.09.2004 в 17:17)
 

>Более-менее корректно это можно сделать только создав приличный словарь
>матерных слов, поскольку их в русском языке, к счастью, не мало.
:)

   
 
 автор: glsv (Дизайнер)   (26.09.2004 в 23:51)   письмо автору
 
   для: LimP   (26.09.2004 в 16:58)
 

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

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования