file_get_contents İle İlgili Çok Önemli Lütfen.

0
Onaylı Üye
Üye
Katılım
30 Mart 2008
Mesajlar
0
Tepki puanı
0
PHP:
Warning: file_get_contents(http://siteadi.com/index.php) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.1 500 Internal Server Error in C:\wamp\www\a.php on line 4

Bir döngü yaptım uzaktaki sitedeki tüm sayfaları geziyor yalnız bazı sayfalara gelince bu hatayı veriyor. Yani sitede öyle bi sayfa yok. Bu hata gelmeden döngüye tekrar devam etsin istiyorum. Yani eğer böyle bir durum varsa döngü dursun baştan baştan tekrar etsin istiyorum.
Yardımlarınız için şimdiden çok teşekkürler...
 
0
Onaylı Üye
Üye
Katılım
12 Aralık 2004
Mesajlar
9,603
Tepki puanı
106
Konum
AZ
Okumada hata olup olmadığını kontrol etmek için

$x = file_get_contents($adres);

if (!$x) {
/* hata olustu birsey yap */
}


Ama her zaman 404, 500 gibi hatalar okuma hatası olacağı anlamına gelmiyor. Örneğin sayfa 404 olabilir ama 301 ile başka sayfalara redirect olabilir, bu da bir okuma hatası olmayacağı için yukarıdaki kod bekleneni yapmaz.

Warning error leri kapamak için ise @file_get_contents şeklinde kullanabilirsin.
 
0
Onaylı Üye
Üye
Katılım
13 Kasım 2006
Mesajlar
6,192
Tepki puanı
44
Konum
localhost
file_get_contents ile normal şartlarda fonksiyon herhangi bir referer cookie veya agent bilgisi göndermez, dolayısı ile, çekmek istediğiniz sayfalarda bu bilgilerin denetimi gerçekleşiyorsa bu sebeple hata veriyorda olabilir.
 
0
Onaylı Üye
Üye
Katılım
14 Haziran 2010
Mesajlar
4
Tepki puanı
0
continue değimi ile döngüyü baştan devam ettirebilirsin,

try {
$icerik = file_get_contents(...);
} catch (Exception $e) continue;

şeklinde.
 
Geri
Üst