İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

file_get_contents Açılmayan sayfaları tekrar denesin

maxcilopez

0
İyinet Üyesi
Katılım
27 Ekim 2006
Mesajlar
545
Reaction score
0
Warning: file_get_contents(http://www.site.com) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.1 503 Service Unavailable in /home/birseyin/public_html/boray/8.php on line 25

Mrb arkadaşlar bu komutla bir siteden veri çekiyorum ama bazan açılmıyor ve db yede o yüzden boş veri yazıyor. Sayfa açılana kadar komutu çalıştırsın eğer açılmıyor ise en son işlemler bittiğinde açılmayan sayfaları tekrar densin bununla ilgili nasıl bir uygulama yaparız Kullanacağımız Komut nedir tşk...
 

CMYLMZ

0
İyinet Üyesi
Katılım
8 Aralık 2006
Mesajlar
1,775
Reaction score
0
Konum
Forumdan ayrıld
mantık olarak eğer veri gelmemişse
if ($gelenVeri == "" ){
Sleep(5)
YenidenDene();
}

gibi bir örnekleme yapılabilir
 

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
PHP:
$res = "no";
unset($content);

  while ($res != "yes") {
  
  $content = file_get_contents($url);
  
     if ($content) {
     $res = "yes";
     }

     else {
     // sleep(2);   // requestler arası zaman vermek için commenti kaldır
    }
  }
 

tiva

0
İyinet Üyesi
Katılım
20 Eylül 2003
Mesajlar
2,741
Reaction score
5
araya 2 komut açıklaması sıkıştıralım (inşallah yanlış açıklamam)

isset ile değişkenin içerisinde bir değer bulunup bulunmadığına bakarız, unset ile de mevcut değişkeni yok ederiz, gereksiz bellek kullanımını engellemekte faydalıdır.
 

Raiden

0
İyinet Üyesi
Katılım
13 Ocak 2005
Mesajlar
339
Reaction score
0
PHP:
file_get_contents("http://site.com/index.php") or file_get_contents("http://site.com/index.php");

or kısmındn sonraki kısım false döndüğünde işleyecektir. yani açılmadığında hata aldığında. tekrar file_get_contents ile açmayı denicektir.
 

KaleSoft

0
İyinet Üyesi
Katılım
17 Kasım 2006
Mesajlar
170
Reaction score
0
PHP:
file_get_contents("http://site.com/index.php") or file_get_contents("http://site.com/index.php");

or kısmındn sonraki kısım false döndüğünde işleyecektir. yani açılmadığında hata aldığında. tekrar file_get_contents ile açmayı denicektir.

cok bilmişlik olmasin ama bu kullanım biraz sakıncalı. php derleyicisi uyari üretir.


ben olsam soyle derdim.:
PHP:
$f=file_get_contents("http://site.com/index.php");
if (!$f) {
//2.deneme
  $f=file_get_contents("http://site.com/index.php");
}

if (!$f) {
//3.deneme
  $f=file_get_contents("http://site.com/index.php");
}

if ($f) {
   // $f var , yapilacak kodlar devam...
}
else {
  //dosya acilamadi.
}
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Üst