![]() | ![]() ![]() |
В общем надо чтоб при добавлении ссылки, нужно её скрыть от незарегестрированных.
В общем имеем такой код:
<? 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);
Вот надо добиться чтоб добавляемая ссылка была скрытой...
![]() | ![]() ![]() |
Обычная обработка ссылки
}else{
Заменяем ссылку на текст "хрена тебе лысогт, шпиён"
}
![]() | ![]() ![]() |
![]() | ![]() ![]() |
if(is_user()){
Обычная обработка ссылки
}else{
Заменяем ссылку на текст "хрена тебе лысогт, шпиён"
}Не, я уже так и хотел сделать, так это будет резать все ссылки на сайте.
Нужно чтоб при добавлении мессаги скрывалась.
Вот с этой корявой фигнёй что то не разберусь:
$msg = preg_replace_callback('~\[url=((https?|ftp)://.+?)\](.+?)\[/url\]|((https?|ftp)://[0-9a-zа-яё/.;?=\(\)\_\-&%#]+)~ui', 'url_replace', $msg);
Здесь должна быть обработка...
![]() | ![]() ![]() |
// ------------------ Вспомогательная функция для 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> проблем небыло бы...
![]() | ![]() ![]() |
новую функцию придётся писать, и будет резать только добавляемые.
Завтра попробую.
Вот с этим 'hidden_text("\1")' и этим 'url_replace' бесполезно помоему...
![]() | ![]() ![]() |
Я тебе сказал как делать
![]() | ![]() ![]() |
else{ Заменяем ссылку на текст "хрена тебе лысогт, шпиён" }
не всё так просто, нужно чтоб было совместимо с существующими обработками.
Чтоб оставалось скрытое и таргет...
При этом таргет для всех...
надо будет с этим поработать
function url_replace($m)
Вечерком может быть подумаю...
![]() | ![]() ![]() |

А ты че то непонятное пишешь
![]() | ![]() ![]() |
моск уставши, а днём сосредоточится не могу, отвлекают,
вечерком попозже попробую вариантик, просто доработаю тот что есть,или заменю...
![]() | ![]() ![]() |
у меня там резерв не успел скачать.
![]() | ![]() ![]() |
![]() | ![]() ![]() |
LeXxS, ты о http://vdscenter.com/ ? у меня все работаетДа разобрался уже, там оказ айпишники сменили,
а у нас как обычно, провайдер тупит, дней пять на обновление днс.
Через прокси заходит...
![]() | ![]() ![]() |
if(is_user()){ 'url_replace' }else{ 'hidden_text' }
Вот только с синтаксисом здесь засыплюсь.
И вообще, можно ли эти параметры обрабатывать ???
Либо писать функцию типа хидден урл, нужно чтоб было скрытие и таргет...
Изм. LeXxS (21.03.2012 / 16:03) [1]
![]() | ![]() ![]() |
читал, плакал
как говорится опыт не пропьешь
того же мнения и о PHP. посему 3 года без кода особенно взбугогнули ггты уже имел опыт три года не касаясь кода ???
Я уже вообще ничего не помню, всё заново придётся.
Кое что помню, но очень мало...
![]() | ![]() ![]() |

![]() | ![]() ![]() |
<?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.'; } }
![]() | ![]() ![]() |
Добился более простым способом, но только того, что для незареганного ссылка становится просто неактивной... Но не скрывается...
Что то мне кажется должно быть проще. Сейчас поизвращаюсь,
потом твой вариант )))
![]() | ![]() ![]() |
Использовал уже готовые функции.
Сейчас дооформлю и код выложу...
![]() | ![]() ![]() |
и вот нахуя тебе нужна была помощь, если в итоге ты собрал свой велосипед?Очень была нужна. Многое забыл, предложенные варианты заставили работать мозг в нужном направлении, за что благодарен Рамзесу и Скримеру.
Сейчас допилю до ума и выложу вариант.
Изначально нужно было использовать готовые функции,чтоб не навешивать лишнего.
Но например вариант Рамзеса может кому то пригодится...