Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> SWL - własny SYSTEM WYMIANY LINKÓW
Piotrwusek
post 4.02.2010, 16:46:13
Post #1





Grupa: Zarejestrowani
Postów: 399
Pomógł: 7
Dołączył: 11.06.2007
Skąd: Poznan

Ostrzeżenie: (20%)
X----


Witam

Klient zażyczył pozycjonowania. Uff... Znowu długie mozolne wspinanie się na sam szczyt góry wyników w Google.
Pisanie treści, linkowanie, katalogowanie, linkowanie, linkowanie

Więc z pomocą katalogowania przyszedł mi SeoAdder. Sprawa załatwiona!

Linkowanie... Korzystanie takich systemów jak LinkMe, LinkPro wymaga posiadania punktów, co wiąże się z wyświetlaniem na swoich stronach linków osób trzecich. W końcu sam posiadam domeny z wysokim PR i dobrze prosperujące w wynikach Google i posiadające dużą oglądalność. Czemu w takim razie mojej nowej strony nie dodać do posiadanych już domen.

Wziąłem się do pracy. bummm.... a co To ?! Ręczne dodawanie do innych stron skróciło mi mój cenny czas. Trzeba to zautomatyzować!
Pierwsze co przyszło mi na myśl to google i wyszukanie darmowego systemu wymiany linków. Jednak po 15 minutach poszukiwania: "Jak nie ma czegoś w Google to nie istnieje." zrezygnowałem. Pięć godzin później cieszę się bardzo prostym własnym systemem linków.

Jak już mówiłem bardzo prosty. O to i on:
Klasa SWL
  1. class SWL{
  2. var $plik = 'swl.txt';
  3. var $keys = 0;
  4. function linki ($ile=5,$separator=' | ') {
  5. if(file_exists($this->plik)){
  6. $plik = fopen($this->plik, "r+");
  7. $tekst = fread($plik, 11);
  8. rewind($plik);
  9. if(empty($tekst) || $tekst<date("Ymd")) {
  10. $result = date("Ymd");
  11. $url = "---ADDRES URL---link.php?key=".$this->keys; // ADRES link.php
  12. $ch = curl_init();
  13. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  14. curl_setopt($ch, CURLOPT_USERPWD, "myusername:mypassword");
  15. curl_setopt($ch, CURLOPT_URL, $url);
  16. $result .= curl_exec($ch);
  17. curl_close($ch);
  18. fputs($plik, $result);
  19. fclose($plik);
  20. }} else {
  21. echo "<center>BRAK PLIKU SWL.TXR</center>";
  22. }
  23. if(file_exists($this->plik) && filesize($this->plik)>0){
  24. $plik = fopen($this->plik, "r");
  25. $linki = fread($plik, filesize($this->plik));
  26. $linki = substr($linki, 8);
  27. $linki = explode('|', $linki);
  28. $array = array();
  29. $i=0;
  30. foreach($linki as $link){
  31. $link = explode('=', $link);
  32. $array[$i]['title'] = $link[0];
  33. $array[$i]['url'] = $link[1];
  34. ++$i;
  35. }
  36. $dane = '<div class="swl">';
  37. foreach($array as $arra){
  38. $dane .= '<a href="'.$arra['url'].'" title="'.$arra['title'].'" target="_blank" name="'.$arra['title'].'">'.$arra['title'].'</a>';
  39. $dane .= $separator;
  40. }
  41. $dane = substr($dane, 0, -strlen($separator));
  42. $dane .='</div>';
  43. return $dane;
  44. fclose($plik);
  45. }}
  46. }


link.php
  1. //łączenie baza
  2. if(isset($_GET['key']) && !empty($_GET['key'])) {
  3. $ids = mysql_query("SELECT * FROM swl_page WHERE id='".$_GET['key']."'");
  4. while ($dane = mysql_fetch_assoc($ids)) {
  5. $id = $dane['id'];
  6. }
  7. $linkpage = mysql_query("SELECT * FROM swl_linkpage WHERE id_page='".$id."'");
  8. $text='';
  9. while ($dane = mysql_fetch_assoc($linkpage)) {
  10. $link = mysql_query("SELECT * FROM swl_link WHERE id='".$dane['id_link']."'");
  11. while ($wiersz = mysql_fetch_assoc($link)) {
  12. $text .= $wiersz['title'].'='.$wiersz['url'].'|';
  13. }
  14. }
  15. $text = substr($text, 0, -1);
  16. echo $text;
  17. }


  • Sterujemy każdym linkiem ręcznie
  • Linki aktualizowane są raz dziennie
  • Posiada też wygodny Panel Admina oparty na ZF.


Jeśli komuś się spodoba chętnie udostępnię. Dzięki temu wzbogaciłem się o cenny czas.

Pozdrawiam
Go to the top of the page
+Quote Post
Helid
post 7.02.2010, 14:36:11
Post #2





Grupa: Zarejestrowani
Postów: 280
Pomógł: 20
Dołączył: 12.12.2007
Skąd: 127.0.0.1

Ostrzeżenie: (0%)
-----


Dzisiaj akurat też zacząłem tworzyć swoje oprogramowanie tego typu i mam do Ciebie kilka wskazówek, mianowicie nie każde zaplecze/strona posiada MySQL -> korzystaj z samych plików. Kolejna sprawa to sposób łączenia
  1. function connectionType()
  2. {
  3. if (function_exists('curl_init'))
  4. {
  5. return 'curl';
  6. } elseif (function_exists('fsockopen')) {
  7. return 'fsockopen';
  8. } elseif (ini_get('allow_url_fopen') && function_exists('file_get_contents')) {
  9. return 'fileGetContents';
  10. } elseif (ini_get('allow_url_fopen') && function_exists('fopen')) {
  11. return 'fopen';
  12. } elseif (function_exists('socket_create')) {
  13. return 'socket';
  14. }
  15. }

Jak widzisz łatwo można dostosować to potrzeb. Nie rozumiem też po co pobierać dane wysyłając przy okazji hasło, login. Lepszym rozwiązaniem jest stworzenie API Key, które zna tylko użytkownik oraz server. Przy pobieraniu danych sprawdzasz czy API podane w parametrze jest zgodne z tym przypisanym do adres IP/Nazwy strony.


--------------------
Go to the top of the page
+Quote Post
ErnestM
post 14.04.2011, 10:25:23
Post #3





Grupa: Zarejestrowani
Postów: 1
Pomógł: 0
Dołączył: 14.04.2011

Ostrzeżenie: (0%)
-----


Hej, i jak wyglada Twoj skrypt na dzien dzisiejszy ? smile.gif
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 9.05.2024 - 19:13