Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    8

    Come memorizzare una pagina HTML in una variabile?

    Salve, penso che il succo del discorso sia tutto nel titolo...
    Avendo l'url di una pagina, c'è modo di memorizzare il codice della pagina stessa in una variabile (come fosse una stringa)?

    Grazie infinite!

  2. #2
    http://it2.php.net/manual/it/functio...t-contents.php

    ma la tua configurazione potrebbe impedirti di usarlosu un file remoto (vedi manuale).. in quel caso, se non puoi cambiare configurazione, devi giocare con le socket

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    8
    Grazie, comunque non ho problemi a cambiare la mia configurazione.

    A questo punto però è sorto un altro problema, più specifico del mio caso.
    Mentre questo metodo funziona per molti siti, a me servirebbe poter acquisire le pagine da Wikipedia, che alla mia richiesta:

    $pagina = file_get_contents("http://it.wikipedia.org/w/index.php?title=Special%3ASearch&search=bla&fullte xt=Ricerca");
    oppone un bel:

    Warning: file_get_contents(http://it.wikipedia.org/w/index.php?...lltext=Ricerca): failed to open stream: HTTP request failed! HTTP/1.0 403 Forbidden
    (stesso errore anche per i link diretti alle voci)

    Che fare? Non esiste un altro metodo per acquisire la pagina? Ad esempio, facendo in modo che il server PHP si comporti come un browser?

  4. #4
    wikipedia evidentemente protegge le pagine da accessi di questo tipo, e da wikipediano accanito ti dico che fa benissimo ^_^

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    8
    [OT]
    Sì, e sono d'accordo che fa benissimo

    In ogni caso, non sono una malintenzionata, e mi servirebbe davvero risolvere il problema: mia madre è non vedente e da poco l'ho convinta a cominciare ad usare il pc per navigare, oltre che per leggere libri. Il problema è che lei ha poca pazienza, e quindi... avete mai provato a leggere una pagina di Wikipedia con uno screen reader? (bendati! senza fare i furbi! ) Probabilmente perderei la pazienza anche io. Quindi vorrei preparare uno script che "ripulisca" le pagine permettendo una lettura più comprensibile. Solo che le mie capacità di programmazione sono ancora piuttosto limitate, e la mia esperienza col php è pari a zero. Purtuttavia, ci terrei ad utilizzare questo linguaggio.
    [/OT]

  6. #6
    Originariamente inviato da Auliya
    [OT]
    Sì, e sono d'accordo che fa benissimo

    In ogni caso, non sono una malintenzionata, e mi servirebbe davvero risolvere il problema: mia madre è non vedente e da poco l'ho convinta a cominciare ad usare il pc per navigare, oltre che per leggere libri. Il problema è che lei ha poca pazienza, e quindi... avete mai provato a leggere una pagina di Wikipedia con uno screen reader? (bendati! senza fare i furbi! ) Probabilmente perderei la pazienza anche io. Quindi vorrei preparare uno script che "ripulisca" le pagine permettendo una lettura più comprensibile. Solo che le mie capacità di programmazione sono ancora piuttosto limitate, e la mia esperienza col php è pari a zero. Purtuttavia, ci terrei ad utilizzare questo linguaggio.
    [/OT]
    provato mai a personalizzare un css e usare quello?

  7. #7
    prova ad usare questo codice:
    Codice PHP:
    <?php
    $address
    ="http://it.wikipedia.org/w/index.php?title=Special%3ASearch&search=bla&fulltext=Ricerca";
    $complete parse_url($address);
    $host $complete["host"];
    $port $complete["port"]  ?  $complete["port"] : 80;
    $uri $complete["path"].'?'.$complete["query"];
    $ua 'Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.0.6) Gecko/20060728 Firefox/1.5.0.6';
    $content="";

    $fh fsockopen($host"80"$errno$errstr10) or die("Errore di connessione");
    $request "GET $uri HTTP/1.1\r\nHost: $host\r\nUser-Agent: $ua\r\n\r\n\r\n";
    fputs($fh$request);

    while ( 
    $newline fgets($fh512) ){
        
    $content .= $newline;
    }
    $pagina strtolower(substr$contentstrpos($content"\n\r\n") ));
    ?>
    il blocco viene messo in base all'user agent del client, con questo sistema simuli la connessione di firefox

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    8
    Originariamente inviato da }gu|do[z]{®©
    provato mai a personalizzare un css e usare quello?
    Ehm... forse non hai ben presente il problema... (ma scusa, è uno script per non vedenti, lo stile non c'entra!)


    @SoulHome: Grazie, è perfetto! L'unica cosa è che mi dà un:

    Notice: Undefined index: port

    sulla riga:

    $port = $complete["port"] ? $complete["port"] : 80;

    Vedo se riesco ad arrangiarmi :master: , ma in ogni caso ci posso convivere

    Grazie!

  9. #9
    è abbastanza normale che accada se non indichi la porta nell'indirizzo, tuttavia questo non compremette il funzionamento dello script (poichè questo è comunque un esito previsto), comuqnue puoi risolvere in due modi:
    1)
    Codice PHP:
    error_reporting(0); 
    (all'inizo dle file)

    2)
    Codice PHP:
    $port = (empty($complete["port"]))  ?  80 $complete["port"]; 
    (al posto della riga che da errore)

    edit:
    il secondo sistema dovrebbe essere più performante ed è anche più corretto..

  10. #10
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    8
    Grazie ancora, seguirò decisamente il tuo consiglio!

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.