LeXxS [Off] [#] (20.03.2012 / 22:30) Последний Дино3@вр |
В общем надо чтоб при добавлении ссылки, нужно её скрыть от незарегестрированных.
В общем имеем такой код:
<? function hidden_text($str) { if (is_user()) { $text = '<div class="hide"><i><b>Скрытый текст:</b></i> '.$str.'</div>'; } else { $text = '<div class="hide"><i><b>Скрытый текст.</b> доступен только зарегестрированным</i></div>'; } return $text; }
Это для текста и при условии, что ставим ВВкод [hide], сам ВВ:
<? $msg = preg_replace_callback('~\[url=((https?|ftp)://.+?)\](.+?)\[/url\]|((https?|ftp)://[0-9a-zа-яё/.;?=\(\)\_\-&%#]+)~ui', 'url_replace', $msg);
Вот надо добиться чтоб добавляемая ссылка была скрытой...
ramzes [Off] [#] (20.03.2012 / 22:40) Крайне позитивный раздолбай |
Обычная обработка ссылки
}else{
Заменяем ссылку на текст "хрена тебе лысогт, шпиён"
}
ramzes [Off] [#] (20.03.2012 / 22:41) Крайне позитивный раздолбай |
LeXxS [Off] [#] (20.03.2012 / 22:50) Последний Дино3@вр |
if(is_user()){
Обычная обработка ссылки
}else{
Заменяем ссылку на текст "хрена тебе лысогт, шпиён"
}Не, я уже так и хотел сделать, так это будет резать все ссылки на сайте.
Нужно чтоб при добавлении мессаги скрывалась.
Вот с этой корявой фигнёй что то не разберусь:
$msg = preg_replace_callback('~\[url=((https?|ftp)://.+?)\](.+?)\[/url\]|((https?|ftp)://[0-9a-zа-яё/.;?=\(\)\_\-&%#]+)~ui', 'url_replace', $msg);
Здесь должна быть обработка...
LeXxS [Off] [#] (20.03.2012 / 22:54) Последний Дино3@вр |
// ------------------ Вспомогательная функция для bb-кода --------------------// function url_replace($m) { global $config; return '<a href="'.$m[1].'"'.$target.'>'.check(rawurldecode(html_entity_decode($m[3], ENT_QUOTES, 'utf-8'))).'</a>'; } else { return '<a href="'.$m[4].'"'.$target.'>'.check(rawurldecode(html_entity_decode($m[4], ENT_QUOTES, 'utf-8'))).'</a>'; } }
Хотел сначала типа такой на скрытие сделать,
но это будет резать все ссылки на сайте.
Если бы бло просто <hide></hide> проблем небыло бы...
LeXxS [Off] [#] (20.03.2012 / 23:28) Последний Дино3@вр |
новую функцию придётся писать, и будет резать только добавляемые.
Завтра попробую.
Вот с этим 'hidden_text("\1")' и этим 'url_replace' бесполезно помоему...
ramzes [Off] [#] (21.03.2012 / 05:43) Крайне позитивный раздолбай |
Я тебе сказал как делать
LeXxS [Off] [#] (21.03.2012 / 13:02) Последний Дино3@вр |
else{ Заменяем ссылку на текст "хрена тебе лысогт, шпиён" }
не всё так просто, нужно чтоб было совместимо с существующими обработками.
Чтоб оставалось скрытое и таргет...
При этом таргет для всех...
надо будет с этим поработать
function url_replace($m)
Вечерком может быть подумаю...
ramzes [Off] [#] (21.03.2012 / 13:08) Крайне позитивный раздолбай |
А ты че то непонятное пишешь
LeXxS [Off] [#] (21.03.2012 / 13:11) Последний Дино3@вр |
моск уставши, а днём сосредоточится не могу, отвлекают,
вечерком попозже попробую вариантик, просто доработаю тот что есть,или заменю...
LeXxS [Off] [#] (21.03.2012 / 13:13) Последний Дино3@вр |
у меня там резерв не успел скачать.
Сланенак [Off] [#] (21.03.2012 / 13:22) Unbaum Alamora |
LeXxS [Off] [#] (21.03.2012 / 15:36) Последний Дино3@вр |
LeXxS, ты о http://vdscenter.com/ ? у меня все работаетДа разобрался уже, там оказ айпишники сменили,
а у нас как обычно, провайдер тупит, дней пять на обновление днс.
Через прокси заходит...
LeXxS [Off] [#] (21.03.2012 / 15:55) Последний Дино3@вр |
if(is_user()){ 'url_replace' }else{ 'hidden_text' }
Вот только с синтаксисом здесь засыплюсь.
И вообще, можно ли эти параметры обрабатывать ???
Либо писать функцию типа хидден урл, нужно чтоб было скрытие и таргет...
Изм. LeXxS (21.03.2012 / 16:03) [1]
LeXxS [Off] [#] (21.03.2012 / 16:05) Последний Дино3@вр |
читал, плакал
как говорится опыт не пропьешь
того же мнения и о PHP. посему 3 года без кода особенно взбугогнули ггты уже имел опыт три года не касаясь кода ???
Я уже вообще ничего не помню, всё заново придётся.
Кое что помню, но очень мало...
ramzes [Off] [#] (21.03.2012 / 18:40) Крайне позитивный раздолбай |
ramzes [Off] [#] (21.03.2012 / 18:44) Крайне позитивный раздолбай |
<?php //--- функция обработки Url ---// function url_replace($m){ if(is_user()){ }else{ } }else{ return '<a href="'.$m[3].'">'.$m[4].'</a>'; }else{ return '<a class="url" href="'.$m[3].'" target="_blank">'.$m[4].'</a>'; } } }else{ return 'This link hidden.'; } }
LeXxS [Off] [#] (21.03.2012 / 19:09) Последний Дино3@вр |
Добился более простым способом, но только того, что для незареганного ссылка становится просто неактивной... Но не скрывается...
Что то мне кажется должно быть проще. Сейчас поизвращаюсь,
потом твой вариант )))
LeXxS [Off] [#] (21.03.2012 / 19:29) Последний Дино3@вр |
Использовал уже готовые функции.
Сейчас дооформлю и код выложу...
LeXxS [Off] [#] (21.03.2012 / 19:37) Последний Дино3@вр |
и вот нахуя тебе нужна была помощь, если в итоге ты собрал свой велосипед?Очень была нужна. Многое забыл, предложенные варианты заставили работать мозг в нужном направлении, за что благодарен Рамзесу и Скримеру.
Сейчас допилю до ума и выложу вариант.
Изначально нужно было использовать готовые функции,чтоб не навешивать лишнего.
Но например вариант Рамзеса может кому то пригодится...