как исключить случай когда 2 стр ссылаются друг на друга более одного раза? - Форум успешных вебмастеров - GoFuckBiz.com
 
 
Форум успешных вебмастеров - GoFuckBiz.com

  Форум успешных вебмастеров - GoFuckBiz.com > Бизнес-решения > Скрипты, программы и технические решения
Дата
USD/RUB93.7196
BTC/USD64771.7115
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии.

Закрытая тема
Опции темы Опции просмотра
Старый 04.03.2010, 17:11   #1
majordon
Senior Member
 
Аватар для majordon
 
Регистрация: 11.10.2008
Сообщений: 6,409
Бабло: $904273
По умолчанию как исключить случай когда 2 стр ссылаются друг на друга более одного раза?

помогите пожалуйста советом, нужен алгоритм

Имеется алгоритм перелинковки сайта по типу вики-перелинковки, которым будем обрабатывать сайт. Сайт уже может быть перелинкован, а наша перелинковка накладывается «сверху» возможно существующей. Одним уз условием запрета нашей перелинковки - когда две страницы ссылаются друг на друга более одного раза, при этом не берём во внимание уже существующую перелинковку. PHP.
Как исключить запрет ссылания друг на друга более одного раза не учитывая старую перелинковку?
majordon вне форума  
Старый 04.03.2010, 17:38   #2
imgreen
Senior Member
 
Аватар для imgreen
 
Регистрация: 15.11.2008
Сообщений: 13,228
Бабло: $247845631
По умолчанию

как понять более одного раза? один и тот же линк на одной странице чтоли несколько раз?
imgreen вне форума  
Старый 04.03.2010, 19:11   #3
majordon
Senior Member
 
Аватар для majordon
 
Регистрация: 11.10.2008
Сообщений: 6,409
Бабло: $904273
ТС -->
автор темы ТС По умолчанию

Цитата:
Сообщение от imgreen Посмотреть сообщение
как понять более одного раза? один и тот же линк на одной странице чтоли несколько раз?
да. только могут быть разные анкоры
majordon вне форума  
Старый 04.03.2010, 19:20   #4
kavopero
Senior Member
 
Аватар для kavopero
 
Регистрация: 27.10.2008
Сообщений: 758
Бабло: $94811
Отправить сообщение для kavopero с помощью ICQ
По умолчанию

А что это плохо? Типа зацепка для бана?
А по алгоритму, ну делать shuffle() всего списка и взять нужное количество
kavopero вне форума  
Старый 04.03.2010, 19:21   #5
imgreen
Senior Member
 
Аватар для imgreen
 
Регистрация: 15.11.2008
Сообщений: 13,228
Бабло: $247845631
По умолчанию

Цитата:
Как исключить запрет ссылания друг на друга более одного раза не учитывая старую перелинковку?
наверное учитывая тогда...
ну парсишь страницу на ссылки, и сверяешь с ними новые, и ставишь если еще нету таких
imgreen вне форума  
Старый 04.03.2010, 19:53   #6
majordon
Senior Member
 
Аватар для majordon
 
Регистрация: 11.10.2008
Сообщений: 6,409
Бабло: $904273
ТС -->
автор темы ТС По умолчанию

Цитата:
А что это плохо? Типа зацепка для бана?
ну да. без этого ограничения после перелинковки вся страница может быть похожа на сплошную ссылку в контенте.
Цитата:
ну парсишь страницу на ссылки, и сверяешь с ними новые, и ставишь если еще нету таких
в целом похоже на рабочую схему, скажу кодеру. спасибо
majordon вне форума  
Старый 04.03.2010, 21:31   #7
JackSoft
Бабло победит зло
 
Аватар для JackSoft
 
Регистрация: 20.06.2008
Сообщений: 2,579
Бабло: $346045
По умолчанию

асоциативные массивы тебе в помощь.
1. парсиш страницу на урлы и загоняеш в хеш типа:
$arr[$url] = '1';
2. добиваеш массив до нужного значения сверяя перед этим:
$needcount = тут количество
$count = 0;
while($count < $needcount)
{
$url = ... взял новый урл который надо вставить
if($arr[$url] != '1')
{
$arr[$url] = '1';
$count++;
}
}
3. получаешь ассоциативный массив нужного размера с уникальными ссылками в ключе массива.
__________________
"Одно Касание/Touch File" - безопасный обмен файлами "TFUtils" - набор утилит TouchFile "TF Screenshots" - заменим Gyazo безопасным аналогом
JackSoft вне форума  
Старый 05.03.2010, 03:15   #8
greenwar
Ебланнед
 
Регистрация: 07.02.2010
Сообщений: 1,052
Бабло: $119555
По умолчанию

Цитата:
Сообщение от majordon Посмотреть сообщение
Как исключить запрет ссылания друг на друга более одного раза не учитывая старую перелинковку?
при такой постановке задачи никак
а так конечно же массив ссылок создать и сравнить с массивом новых ссылок
greenwar вне форума