ďťż

[PHP] Problem z funkcja getimagesize

       

Podstrony


telcocafe

Funkcja if(is_file($obraz )){
spełnia swoją rolę, jeżeli obrazek jest bezpośrednio na serwerze. Natomiast gdy wskazuje na plik spoza np http://www.witryn.pl/obrazek.jpg funkcja stwierdza , że obrazek nei jest plikiem i wywoluje komende brak pliku.
Jakiej funkcji użyć, by skrypt był odporny na ten błąd ?
<?php function avatar($obraz) { if(is_file($obraz )){ $size = getimagesize($obraz); $wysokosc = $size[1]; $szerokosc = $size[0]; if ($szerokosc > 120) { $szerokosc = 120; $procent = ($size[0] / $szerokosc); $wysokosc = ($size[1] / $procent); } else if ($wysokosc > 90) { $wysokosc = 90; $procent = ($size[1] / $wysokosc); $szerokosc= ($size[0] / $procent); } echo "<img src='$obraz' height='$wysokosc' width='$szerokosc' /> "; } else { echo 'nie ma pliku '. $obraz; } ?>



fopen()
albo
fsockopen()
Za pomocą tych sprawdzisz, czy na zew. serwerze jest dany plik :)

Probowalem tez z:

<?php
function url_exists($url) {
if ((strpos($url, "http")) === false) $url = "http://" . $url;
if (is_array(@get_headers($url)))
return true;
else
return false;
}
?>

<?php
if(is_file($obraz ) || url_exists($obraz)){
?>
ale bez rezulatatu.

Po pierwsze: co Ty chcesz osiągnąć, napisz konkretnie (co innego masz w tytule tematu, co innego w treści).
Po drugie: stosuj tagi BBCode ([ code ], [/ code]) ;)

Po trzecie: popróbuj też z innymi funkcjami, jakie są w komentarzach do file_exists w manualu :)
<?php function url_exists($url) { if (!$fp = curl_init($url)) return false; return true; } ?>
(Aby to działało, musisz mieć cURL).

I wtedy:
<?php if (file_exists($fileAddress) || url_exists($fileAddress)) { $file = fopen($fileAddress, 'r'); //i tak dalej } ?>

Działa?
Ew. sprawdź też to:
<?php function url_exists($url){ if(strstr($url, "http://")) $url = str_replace("http://", "", $url); $fp = @fsockopen($url, 80); if($fp === false) return false; return true; } ?>
Pamiętam, że efektywnie z tej funkcji korzystałem...
Użytkownik pbnan edytował ten post 10 maj 2007, 15:35
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.