Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [ajax/php] Sprawdzanie poprawności linku
mrjozo
post 20.07.2007, 13:50:24
Post #1





Grupa: Zarejestrowani
Postów: 142
Pomógł: 3
Dołączył: 27.06.2007

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


Chciałby sprawdzić za pomocą advAJAX, czy link jest poprawny

cos takeigo zawsze daje "connetion timed out"
Kod
    advAJAX.head({
    url: "wp.pl",
    timeout : 4000,
    onTimeout : function() { alert("Connection timed out."); },
    retry: 1,
    onRetry : function() { alert("Retry connection..."); },
    onRetryDelay : function() { alert("Awaiting retry..."); },
    onSuccess : function(obj) { alert("ok" + obj.status); },
    onError : function(obj) { alert("Error: " + obj.status); }
});


a takie coś: (zawsze daje "ok" i status 200, nawet gdy strona nie istnieje)

Kod
    advAJAX.get({
    url: "stronaaaaaaaaa.pl",
    timeout : 4000,
    onTimeout : function() { alert("Connection timed out."); },
    retry: 1,
    onRetry : function() { alert("Retry connection..."); },
    onRetryDelay : function() { alert("Awaiting retry..."); },
    onSuccess : function(obj) { alert("ok" + obj.status); },
    onError : function(obj) { alert("Error: " + obj.status); }
});


można sprawdzić link bezpośrednio przy pomocy advAJAX? czy muszę skorzystać z ajaxa bez advAJAX

Ten post edytował mrjozo 20.07.2007, 17:15:01


--------------------
W chwili wolnego zapraszam na gry Dla każdego coś się znajdzie;)
Go to the top of the page
+Quote Post
legorek
post 20.07.2007, 16:25:46
Post #2





Grupa: Zarejestrowani
Postów: 411
Pomógł: 35
Dołączył: 27.06.2004
Skąd: Kraków

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


AJAX pozwala tylko na zapytania do domeny na której znajduje się skrypt.


--------------------
Go to the top of the page
+Quote Post
mrjozo
post 20.07.2007, 17:16:35
Post #3





Grupa: Zarejestrowani
Postów: 142
Pomógł: 3
Dołączył: 27.06.2007

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


Dzięki za info:)

to teraz mam inny problem, mam dwa skrypty php do sprawdzania czy link istnieje, ale obydwa wykonują się w ok. 5 sek to troche długo :/

pierwsza to prosty fopen:

  1. <?php
  2. if($link)
  3. {
  4. $file = @fopen ("$link", "r");
  5.  
  6. }
  7. if($file)
  8. {  echo "jest" ;
  9. fclose($file);
  10. } else {
  11. echo "nie ma";
  12.  
  13.  
  14. }
  15. ?>

druga: (zwraca mi tablice z kilkoma informacjami)

  1. <?php
  2. $main = array();
  3. $ch = curl_init();
  4. curl_setopt ($ch, CURLOPT_URL, $url);
  5. curl_setopt ($ch, CURLOPT_HEADER, 1);
  6. curl_setopt ($ch, CURLOPT_NOBODY, 1);
  7. curl_setopt ($ch, CURLOPT_NETRC, 1);
  8. curl_setopt ($ch, CURLOPT_TIMEOUT, 10);
  9. curl_exec ($ch);
  10. $stuff = ob_get_contents();
  11. curl_close ($ch);
  12. $parts = split("n",$stuff,2);
  13. $main = split(" ",$parts[0],3);
  14. return $main;
  15. ?>


czy jest jakiś inny sposób, żeby wykonywało się to szybciej?

Ten post edytował mrjozo 20.07.2007, 17:16:57


--------------------
W chwili wolnego zapraszam na gry Dla każdego coś się znajdzie;)
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: 7.07.2025 - 05:15