Skocz do zawartości

[Szukam] Darmowy skrypt wymiany linkow


netelektryk

Rekomendowane odpowiedzi

Bardziej chodzi mi o skrypt do zarzadzania linkami, chodziloby o to zeby raz wstawic kod na strone i juz zarzadzac linkami z jakiegos panelu.

Z tego co widzialem sa rozwiazania ale płatne, dla mnie chodziloby o jak najprostszy programik aby na ilus tam domenach nie zmieniac co kilka dni linkow robiac to recznie.

Używaj Cuilla i Hakii

Odnośnik do komentarza
Udostępnij na innych stronach

Stosuje linkarz, ale steruje linkami z poziomu bazy danych.

z Panelu admina niewygodnie dodawac kilkaset linkow.

to na linki "stale" a na rotacje - prosty skrypt z random, ale to juz osobno na kazdym dmo... na kazdej stronie. :)

Odnośnik do komentarza
Udostępnij na innych stronach

Ja tam przejrzałem kod "od strony klienta" dwóch polskich SWL (nie e-weblink i seo.net z uwagi na to ze kody są "brzydkie" :)) i na podstawie tych kodów próbowałem zrozumieć dokładnie zasade działania prostego systemu wymiany linków.

I aktualnie mam pomysł taki:

Na stronie "matce" z bazy danych MySQL będą sortowane linki i raz na 24h będą pobierane przez skrypty umieszczone na moich stronach (pobieram paczki po 100 linków). Skrypt na stronie pobiera przez cały dzień linki z pliku tekstowego tak aby nie obciążać bazy danych :(

Znacie może coś bardziej optymalnego do losowania 5 liczb niż rand() i mt_rand()? Ja aktulanie dałem to w pętle tyle że gdy np skrypt zassa z serwera paczuszkę 250-300 linków to odczuwa się wolniejszą prace skryptu.

Michał Kryński
Zapraszam na moje forum akwarystyczne  ;-) 

 

Odnośnik do komentarza
Udostępnij na innych stronach

Znacie może coś bardziej optymalnego do losowania 5 liczb niż rand() i mt_rand()? Ja aktulanie dałem to w pętle tyle że gdy np skrypt zassa z serwera paczuszkę 250-300 linków to odczuwa się wolniejszą prace skryptu.

Musiał byś pokazać kod losowania , bo na wydajnośc największy ma wpływ algorytm.

Odnośnik do komentarza
Udostępnij na innych stronach

Na razie według mnie to było najlepsze rozwiązanie:

$plik = file($nazwa_pliku);
$min = 2;
$max = count($plik);
$limit = 5;

for($i=0;$i<$limit;$i++){
$rand = mt_rand($min,$max);
$swl[$i] = $plik[$rand];
}
print ''.$swl[0].' | '. $swl[1].' | '.$swl[2].' | '.$swl[3].' | '.$swl[4].'';

Jednakże nie wiem czy pętla while nie bedzie bardziej wydajna niż for

Michał Kryński
Zapraszam na moje forum akwarystyczne  ;-) 

 

Odnośnik do komentarza
Udostępnij na innych stronach

Na razie według mnie to było najlepsze rozwiązanie:

$plik = file($nazwa_pliku);
$min = 2;
$max = count($plik);
$limit = 5;

for($i=0;$i<$limit;$i++){
$rand = mt_rand($min,$max);
$swl[$i] = $plik[$rand];
}
print ''.$swl[0].' | '. $swl[1].' | '.$swl[2].' | '.$swl[3].' | '.$swl[4].'';

Jednakże nie wiem czy pętla while nie bedzie bardziej wydajna niż for

Jak na moje oko to najbardziej zasobozerne w tym alogrytmi moze byc piersza linijka ktora otwiera plik i dzieli jego zawartosc do tablicy. Jezlei plik jest duzy to zapelnie nim tablicy moze dlugo trwac. tak samo z odszukiwaniem indesku w takiej tablicy $plik[$rand] - takie operacje nie sa najmocneijsza strona PHP.

Osobiscie jezeli to jest problemem to przeniosl bym cieazar tego algorytmnu na baze SQL, w ostatecznosci plik rozbil bym na klika mniejszych i losowal najpierw jego numer.

Odnośnik do komentarza
Udostępnij na innych stronach

THI, jeszcze nie wiem, zobaczymy jak będzie działać :)

Grz3g0rz, jak przeglądałem skrypty z obecnych SWL to wszystkie (?) korzystają z tej operacji. Jeżeli chodzi o MySQL to raczej nie wchodzi to w grę z uwagi na to że zaplecze mam na kilka kontach www, kiedyś się też nad tym zastanawiałem tyle że troche w inny sposób, aby na serwerze "matce" losować 5 linków i za pomocą curl wyświetlać je na stronie, tyle że to by było jeszcze bardziej zasobożerne, przynajmniej tak mi się wydaje.

Jeżeli chodzi o dzielenie pliku to może i to było by lepsze rozwiązanie, ja osobiście wymyślilem jeszcze sposób jak odciążyć losowanie a mianowicie gdy mam np 100 rekordów w pliku tekstowym to dziele go na 5 części i wtedy bez pętli daje 5 razy mt_rand() dla każdego linku tyle że zakres losowania liczb będzie ograniczony do 20 możliwości np:

mt_rand(1,20)

mt_rand(20,40)

mt_rand(40,60)

mt_rand(60,80)

i dzięki temu czas losowania numeru rekordu powinien się skrócić.

Michał Kryński
Zapraszam na moje forum akwarystyczne  ;-) 

 

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności