Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    [PHP]rilevare l'esistenza di un file esterno

    Ciao a tutti,
    come faccio a verificare se un file (per es. un img) esterno al server che ospita il sito, esiste?
    Ho provato con il file_exists() ma mi restituisce FALSE anche se l'immagine in realtà c'è.

    Grazie in anticipo ^_^
    Flash Developer for Rich Media
    PHP, jQuery Developer

  2. #2
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    io mi ero scritto questa:

    codice:
      function isValidURL($url) {
    
        $urlPieces = parse_url($url);
    
        $start = time();
    
        $sock = @fsockopen($urlPieces['host'], 80, $errno, $errstr, 30);
    
        $end = time();
    
        if($sock) {
    
          fputs($sock,"HEAD {$urlPieces['path']} HTTP/1.1\r\nHost: {$urlPieces['host']}\r\n\r\n");
    
          while($line=fgets($sock)) {
    
             $linee[] = $line;
    
          }
    
          $risp = $linee[0];
    
          if(strpos($risp, "200") || strpos($risp, "302") || strpos($risp, "304")) {
    
            return true;
    
          } else {
    
            return false;
    
          }
    
        } else {
    
          return false;
    
        }
    
    
      }

  3. #3
    mi è un po' lento ad essere eseguito... a me servirebbe qlcs di immediato perché devo vedere se un'immagine esiste per capire se fare un getimagesize() su di essa senza mostrare agli utenti il brutto messaggio di errore.
    Flash Developer for Rich Media
    PHP, jQuery Developer

  4. #4
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    credo sia il metodo + veloce...

    fa una semplice richiesta HEAD, che è la minima richiesta che si può fare verso un file.

    Comunque se fai un getimagesize di un url che non esiste otterrai size 0 e potrai decidere di mostrare quel che ti pare, no?

    ciao

  5. #5
    eh no... mi restituisce un errore se l'immagine non esiste...

    dici che un
    Codice PHP:
    if (getimagesize($url)){
    ...

    funzionerebbe?
    Flash Developer for Rich Media
    PHP, jQuery Developer

  6. #6
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    come non detto...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.