WebRing

.des.

Поставил пиво кому надо ;-)
ты имеешь ввиду организацию кольца сайтов по определенной тематике? а что есть какой-то алгоритм?
Может быть ты объяснишь поподробнее свою задачу..? а то лаконичность это хорошо.. но не настолько же.
 

RomikChef

Guest
ты бы посмотрел любой вебринг?
Там же все ясно.
Люди вставляют себе (в страницу) простой код со ссылками.
ссылки ведут на твой сайт
на сайте - простенькая базка с сайтами и редиректор.

Например чел кликает в случайный сайт, твой скрипт выбирает из базки случайную запись и редиректит.
 

TsarAlex

Новичок
Я ожидал получить намеки где могут быть подводные камни. И как тут делать anti-cheating защиту.

P.S.: для того чтобы все страницы отсылались в GZip формате достаточно в начало страниц вставить
ob_start("ob_gzhandler");
?
 

RomikChef

Guest
Послушай, тамбовский царь.
Ты не мог бы мне привести пример читинга для вебринга?
И пример того уникума, которому взбредет в голову что-то химичить с вебрингами?

И еще.
В следующий раз пиши именно то, что хочешь узнать.
А то сначала тебе алгоритм, а потом выясняется, что не алгоритм, а подводные камни.

PS. Нет, недостаточно. Надо посмотреть в документации на эту функцию, как ее использовать.
 

LEglantier

Guest
Автор оригинала: TsarAlex
Я ожидал получить намеки где могут быть подводные камни. И как тут делать anti-cheating защиту.
Ну, вот тебе типичный подводный камень для вебринга: Мембер зарегистрировал сайт и забыл поставить код кольца на страницу. В результате кольцо рвется.

Предполагаемый метод этого избежать. Каждый сайт, внесенный в список должен иметь в нем еще какой-нибудь аттрибут, который указывал бы на то активный он или неактивный. Активным при этом считается сайт, владелец которого установил код и сам пошел куда-то по ссылке на своем сайте. Ловишь это знаменательное событие скриптом и меняешь аттрибут с неактивного на активный. Естественно, ты должен сделать такой алгоритм, который выдавал бы в ссылку не просто на следующий сайт, а ссылку на следующий АКТИВНЫЙ сайт.

Это, кстати, не защищает от случая, когда мемберу надоело числиться в твоем кольце и он снес код. Можно, конечно, пытаться регулярно получать текст зарегистрированной страницы удаленно и искать твой код, а можно застсвить скрипт сообщать тебе, что последний переход куда-то с этого сайта по кольцу был, скажем, 3 месяца назад. Идешь и смотришь.
 

TsarAlex

Новичок
Во-во. Ща конкрентынй пример. Вот часть кода которая выдает ссылку на сайт-участник кольца (phpMyRing by Nicolas):

$conn=connecte();
$res=requete("SELECT * FROM webring WHERE accept='1' and idsite!='$de'");
$nb=mysql_num_rows($res);
// ******
$x=$nb-1;
srand((double)microtime()*1000000);
$i=rand(0,$x);
$site_nom=AddSlashes(mysql_result($res,$i, "site_nom"));
$idsite=mysql_result($res,$i, "idsite");
$lien=$conf['adresse_site']."/".$conf['dossierwr'];
$site1="<a href=\"$lien/clik.php?idsite=$idsite\" target=\"_blank\"><b>$site_nom<b></a>";

Тут все просто как день кроме той строчки что идет сразу после
// ******
Почему в выборе ссылки учавствуют не все сайты. И еще одна проблема: как сделать чтобы кол-во кликов на все ссылки на сайты-участники было одинаковым, или так в WebRing'е быть не должно?
 

TsarAlex

Новичок
Автор оригинала: RomikChef
PS. Нет, недостаточно. Надо посмотреть в документации на эту функцию, как ее использовать.
Но ведь в php_manual в примере использования именно так. То есть просто в начале
ob_start("ob_gzhandler");

затем код. Вот собственно и все. И сказано что страница будет GZip-encoded.
 
Сверху