Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    217

    Errore con file_get_content

    Solitamente per acquisire l'html di una pagina web uso la funzione in oggetto.
    Tuttavia, se utilizzata per una url "post datata"
    comunque disponibile sul sito "madre"(Es.: http://www.ilpost.it/2014/02/25/peanuts-2014-febbraio-25/ ), restituisce questo errore e blocca lo script:

    file_get_contents(http://www.ilpost.it/2014/02/18/pean...4-febbraio-18/) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.0 404 Not Found in [directory del mio codice]


    Come posso aggirare questo errore?

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,503
    Beh, hai provato a seguire il link che hai postato?

    OOOPS!

    La pagina che stai cercando non esiste, oppure si è rotto qualcosa.
    Prova a tornare in home page per leggere le ultime notizie.
    La pagina non esiste sul server, ovvio che file_get_contents() non funzioni.

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    217
    Certo, l'avevo posto come premessa, ma in realtà mi pareva che comunque qualcosa ("Ooops", appunto!) venisse visualizzato all'url indicata... quindi credevo che in realtà "esistesse".

    Dunque, come potrei fare per pre-verificare l'esistenza dell'url, prima di darla in pasto a file get content? Una funzione php potrebbe fare questo? [file_get_content può rispondere FALSE, ma ho visto che lo comunque dopo aver dato errore...)

    Infatti il codice:
    if (file_get_contents($url_to_feed) !== FALSE){
    echo "ok";
    }else{
    echo "errore!";
    }
    Restituisce:
    Warning: file_get_contents(http://www.ilpost.it/2014/02/16/pean...4-febbraio-16/) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.0 404 Not Found in [...]
    errore!
    Ultima modifica di Tom1884; 16-02-2014 a 17:01

  4. #4
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,503
    Codice PHP:
    if ( @file_get_contents($url) !== FALSE //@ per evitare il warning
    {
        echo 
    'ok';
    }
    else
    {
        echo 
    'la pagina non esiste';


Tag per questa discussione

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.