Есть необходимость все линки на сайте или те у которых есть кой нить отличительный "id" сделать при выводе пустыми - (неактивными), а как только юзвер залогинился на сайте то для него открываються все эти линки, т.е. становяться доступными!. Подскажите как это можно реализовать??
Amiak Я бы сделал что-то такое: function link_content ($linkID, $user){ if (user_exists ($user)){ return текст который нам нужен } else return "#"; } ... <a href='<?=link_content(1,$_SESSION['user']);?>'... Это если линков мало
я пока ничего не делал... но смысл дошол у меня до такой же схемки.. и сразу результат пошол о том что если линков будет под 2000... запарюсь такую базу линков вводит и тем более их отслеживать!.. проше я думаю если рассматривать этот вариант то нуно сделать так Код (Text): function link_content ($linkID, $user){ $1_link = "http;//www.kukuevo.ru"; $2_link = "http;//www.kukuevo.ru/download"; $3_link = "http;//www.kukuevo.ru/forum/"; ............... и т.д. if (user_exists ($user)){ eval("return ".$linkID."_link;"); // за ошибки в синтаксисе сори, некогда проверять } else return "#"; } ... во всевозможными упрощениями БД линков т.е. вынести все линки в БД или в файл и парсить их от туда! как думаете так резонно?
Amiak, ну, допустим, сделай функцию register_rule_operator($link), которая будет добавлять куда-либо(например, в БД в таблицу) линки, которые доступны только зарегеным пользователям. При добавлении такого ресурса вызываешь эту функцию, она добавляет в хранилище(которое, кстати, можно закешировать) линк. И сделай другую функцию get_rule($link), которая возвращает true если линк присутствует в хранилище, и false в противном случае. А в коде вызывай что-то вроде if (is_user() || get_rule($link)) { echo '<a href="'.$link.'">...</a>'; }... Надеюсь понятно объяснил?
Не, это извращение =) Когда пользователь логинится - ему куки ставятся или сессия создается или что? Код в студию!
ребята вы оба имеете правильный ход мысли... соединив ваши две идее получиться вполне нормальный консенсус... в первом обе эти функции имеют место либоже совместить их в одну... во втором полюбасу придется использовать куки..
Попробуй для таких ссылок выставить например class="for_users", а далее используй ob_start("callback"); где в функции callback с помощью регулярных выражений исщи все ссылки с class="for_users" и если нужно заменяй на "#" или вообще удаляй. Наверное это не лучшее решение, но как вариант.