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

    Controllare contenuto di un'URL esterna

    In un mio sito ho la necessità di interrogare una pagina di un altro sito. In base al fatto che sulla pagina richiamata compaia la stringa "Nessun risultato" o meno ricavo delle informazioni che mi servono.
    Ho usato un codice di questo genere
    codice:
    <?
    $lines = file('http://www.sito.it/pagina_da_interrogare');
    $trovato=true;
    if (in_array("Nessun risultato",$lines)) $trovato=false;
    
    if ($trovato) echo "Nessun risultato";
    else echo "Risultati trovati";
    ?>
    Però lo script non funziona correttamente. Cosa sbaglio?

  2. #2
    cosa vuol dire "non funziona"? hai errori? o non fa quello che dovrebbe fare?

  3. #3
    Scusa, in effetti mi sono espresso male.
    Intendo che non fa quello che vorrei facesse.

    Mi restituisce in ogni caso "Risultati trovati", anche nel caso in cui la pagina contenga il testo che cerco.

  4. #4

    Re: Controllare contenuto di un'URL esterna

    Codice PHP:
    $lines file('http://www.sito.it/pagina_da_interrogare');
    $trovato=true;
    array_walk($lines'rtrim');
    if (
    in_array("Nessun risultato",$lines)) $trovato=false;

    if (
    $trovato) echo "Nessun risultato";
    else echo 
    "Risultati trovati"
    prova così

    è molto probabile che hai a fine riga un \r

  5. #5
    Ho provato con il tuo script ma non funziona ancora.

    Mi viene però un dubbio... La condizione
    codice:
    in_array("Nessun risultato",$lines)
    restituisce true solo se la l'elemento dell'array (in questo caso una riga del codice HTML) è esattamente "Nessun risultato" o anche se lo contiene? Perchè nel mio caso la riga contiene il testo "Nessun risultato", ma non è l'unico testo contenuto...

  6. #6

    Re: Re: Controllare contenuto di un'URL esterna

    Originariamente inviato da apusoft
    Ho provato con il tuo script ma non funziona ancora.

    Mi viene però un dubbio... La condizione
    codice:
    in_array("Nessun risultato",$lines)
    restituisce true solo se la l'elemento dell'array (in questo caso una riga del codice HTML) è esattamente "Nessun risultato" o anche se lo contiene? Perchè nel mio caso la riga contiene il testo "Nessun risultato", ma non è l'unico testo contenuto...
    ehm... sì, solo se è identico

    Codice PHP:
    $filename 'http://www.sito.it/pagina_da_interrogare';
    $handle fopen($filename'r');
    $contents fread($handlefilesize($filename));
    fclose($handle);

    $trovato=false;
    if (
    strpos('Nessun risultato',$contents)===false$trovato=true;

    if (
    $trovato) echo "Nessun risultato";
    else echo 
    "Risultati trovati"

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.