Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

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

 

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

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

тема: всё та же проблема, запрет ссылок в сообщении.
 
 автор: Slo_Nik   (12.04.2010 в 21:41)   письмо автору
 
 

Добрый день.
Задача состоит в следующем.
Есть гостевая книга, надо запретить ввод ссылок в сообщении, но оставить возможность ввода e-mail.
При написании сообщения нет возможности использовать bb-code, сообщение обрабатывается htmlspecialchars();
Поэтому, если вписать в сообщение ссылку, то она будет выведена в таком виде на странице
<a href=\"http://****.com/\">gitiblbxsrvs</a>
Вот пример такого сообщения

<a href=http://www.feuerwehr-altenmarkt-alz.de/buls/unjc/folic_acid_deficiency.html>folic acid deficiency</a>
Fibroelastic alteration http://www.feuerwehr-altenmarkt-alz.de/buls/unjc/folic_acid_deficiency.html
CIS test
<a href=http://www.feuerwehr-altenmarkt-alz.de/buls/unjc/folic_acid_foods.html>folic acid foods</a> In older http://www.feuerwehr-altenmarkt-alz.de/buls/unjc/folic_acid_foods.html

Я попробовал написать РВ, что бы реагировало на ссылки, но при этом не реагировало на e-mail, вот что получилось

<?php 
if(preg_match("#(<a href=|\[url=|\[link=)?(ftp://|https?://|www)?([\s]?)([^-a-z0-9_@]+)([-a-z0-9/.\s]+\.[a-z]{2,6}[-a-z0-9_/.]*[html|php|cgi]*[\]>]?)+#is",$_POST['text']))
       {
       
$error[] = "<p class='error'>Присутствует запрещённый текст.</p>";
      }
?>

тестировал сообщениями типа

test.com
www.test.com
http://www.test.com
http://test.com
<a href=http://test.com>tttt</a>
\[url=http://test.com\]tttt\[/url\]***
[link=http://test.com]tttt[/link]
https://test.com
ftp://test.com
tetest.com/book/index.php

вроде нормально реагирует, выдаёт предупреждение, при этом e-mail пропускает.
Но у меня есть сомнения, что я всё правильно сделал, запутался в квантификаторах окончательно.
Просьба к знающим людям, укажите пожалуйста на ошибки.

*** слеши поставил специально, когда писал сообщение здесь

  Ответить  
 
 автор: Trianon   (12.04.2010 в 22:44)   письмо автору
 
   для: Slo_Nik   (12.04.2010 в 21:41)
 

кому мешают непроведенные в a href ссылки?

  Ответить  
 
 автор: Slo_Nik   (12.04.2010 в 22:51)   письмо автору
 
   для: Trianon   (12.04.2010 в 22:44)
 

>кому мешают непроведенные в a href ссылки?
не совсем понятно...
не только a href, но и url и link и т.п.
Вообще то владельцу сайта мешает любое подобие рекламной ссылки, кроме адреса e-mail

  Ответить  
 
 автор: Trianon   (12.04.2010 в 23:53)   письмо автору
 
   для: Slo_Nik   (12.04.2010 в 22:51)
 

что есть url и link?
кому мешает не http://softtime.ru , а просто http://softtime.ru или даже softtime.ru ?

Как этот самый владелец определяет, что ссылка несет рекламный, а не информационный характер?!
Он ясновидящий чтоли?

  Ответить  
 
 автор: Slo_Nik   (13.04.2010 в 00:35)   письмо автору
 
   для: Trianon   (12.04.2010 в 23:53)
 

может и ясновидящий, не знаю, только задача была в том, что бы кроме текста и e-mail ни чего нельзя было вписать в сообщение. по его словам, много приходит подобных сообщений, образец которых я привёл.
хотя сообщения модерируются, не сразу на страницу выводятся...

хотелось бы узнать о моих ошибках в регулярном выражении :)

  Ответить  
 
 автор: Trianon   (13.04.2010 в 01:33)   письмо автору
 
   для: Slo_Nik   (13.04.2010 в 00:35)
 

Одно скажу.
Лучи анального поноса изрядной интенсивности из-за того, что на движке невозможно будет изложить мысль без извращений, будут направлены именно Вам, как программисту портала. Хотите себя такой целью выставлять - вперед.
Про владельца портала может кто и вспомнит, но врядли. Вы сам разве только.

Я со своей стороны очень надеюсь никогда не заглянуть на портал, применяющий столь драконовские цензурные ограничения.

  Ответить  
 
 автор: Slo_Nik   (13.04.2010 в 01:52)   письмо автору
 
   для: Trianon   (13.04.2010 в 01:33)
 

>Я со своей стороны очень надеюсь никогда не заглянуть на портал...
а там делать то и не чего :), разве что мечтательным девчушкам там место....
>Вам, как программисту портала...
я таковым не являюсь, да и не портал это вовсе, а так, небольшой сайтик, ну сделал маленькую гостевую и всё...

  Ответить  
Rambler's Top100
вверх

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