function гиперссылки
1.
Wapuns (23.09.2011 / 19:45)
Подскажите функцию гиперссылки т.е когда пишем
http://site.ru выдаст ссылку а не просто текст из базы! Помогите) С меня +
2.
Андрей (23.09.2011 / 19:58)
preg_replace(), preg_match_all(), preg_match()
3.
Wapuns (23.09.2011 / 20:03)
Барыга Обама (23 Сентября 2011 / 19:58)
preg_replace(), preg_match_all(), preg_match()
не имею понятия как применить!
4.
Андрей (23.09.2011 / 20:12)
preg_replace('/http://(.*)\s/','<a href="http://\1">\1</a>',$text_from_db);
Както-так. Может даже это заработает. Лень мне.
5.
Wapuns (23.09.2011 / 20:15)
Барыга Обама (23 Сентября 2011 / 20:12)
preg_replace('/http://(.*)\s/','<a href="http://\1">\1</a>',$text_from_db);
Както-так. Может даже это заработает. Лень мне.
Не работает)
6.
Neformat (23.09.2011 / 20:27)
$text=preg_replace("#(https?|ftp)://\S+[^\s.,>)\];'\"!?]#",'<a href="\\0">\\0</a>',$text);
7.
Wapuns (23.09.2011 / 20:33)
Neformat (23 Сентября 2011 / 20:27)
$text=preg_replace("#(https?|ftp)://\S+[^\s.,>)\];'\"!?]#",'<a href="\\0">\\0</a>',$text);
напиши пжсл поную функцию, так как я скорее всего косячу, у меня не пашет!
8.
iNeeXT (24.09.2011 / 00:29)
<?php
function bb_code($message){
$message = preg_replace_callback('~\\[url=(http://.+?)\\](.+?)\\[/url\\]|(http://(www.)?[0-9a-z\.-]+\.[0-9a-z]{2,6}[0-9a-zA-Z/\?\.\~&_=/%-:#]*)~', 'url_replace', $message);
return $message;
}
function url_replace($m) {
if( !isset($m[3]) ) {
return '<a target="a_blank" href="' . $m[1] . '">' . $m[2] . '</a>';
} else {
return '<a target="a_blank" href="' . $m[3] . '">' . $m[3] . '</a>';
}
}
?>
9.
ramzes (24.09.2011 / 01:24)
$message = preg_replace_callback('~\\[url=(http
s?://.+?)\\](.+?)\\[/url\\]|(http
s?://(www.)?[0-9a-z\.-]+\.[0-9a-z]{2,6}[0-9a-zA-Z/\?\.\~&_=/%-:#]*)~', 'url_replace', $message);
маленькая надбавочка, вантуз о ней забыл =)
10.
Wapuns (24.09.2011 / 16:25)
iNeeXT (24 Сентября 2011 / 00:29)
<?php
function bb_code($message){
$message = preg_replace_callback('~\\[url=(http://.+?)\\](.+?)\\[/url\\]|(http://(www.)?[0-9a-z\.-]+\.[0-9a-z]{2,6}[0-9a-zA-Z/\?\.\~&_=/%-:#]*)~', 'url_replace', $message);
return $message;
}
function url_replace($m) {
if( !isset($m[3]) ) {
return '<a target="a_blank" href="' . $m[1] . '">' . $m[2] . '</a>';
} else {
return '<a target="a_blank" href="' . $m[3] . '">' . $m[3] . '</a>';
}
}
?>
Прекрасная функция, но у меня ссылки отображает простые типа
http://site.ru а длинные ссылки типа
http://visavi.net/forum/topic.php?tid=25088& не выводит, т.е выводит как текст ((( помогите, функцию почти работает
11.
ramzes (24.09.2011 / 16:29)
Это зависит от того в каком виде у тебя хранятся данные, возможно слеши экранированы
12.
Wapuns (24.09.2011 / 16:36)
ramzes (24 Сентября 2011 / 16:29)
Это зависит от того в каком виде у тебя хранятся данные, возможно слеши экранированы
Что скорее всего, как не экранировать слеши? Функция за это отвечает какая-нить?!
13.
Wapuns (24.09.2011 / 17:14)
##### Фильтрация перед записью данных #####
function input($var)
{
return mysql_real_escape_string(trim($var));
}
Данная функция в том числе экранирует слеш, как сделать чтобы не экранировались, так как нужно чтобы ссылки выводились корректно!
14.
Wapuns (24.09.2011 / 18:13)
разобрался. тема офф
URL:
https://visavi.net/topics/25088