Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    183

    algoritmo per estrarre il titolo di una pagina web

    ciao a tutti!
    vorrei creare una semplicissima pagina web in cui, inserendo in una casella un qualsiasi indirizzo web, si ottenga il titolo di questo indirizzo.
    esempio:
    inserendo: http://forum.html.it
    si ottiene: HTML.it forum

    oppure

    inserendo: http://www.google.it/
    si ottiene: Google

    Non ho però la minima idea su come poter ottenere questa cosa...
    E' possibile? Avete qualche idea? Come si procede?
    Grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    183
    nessun aiutino?? daiii :-) grazie mille

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    183
    nessuno nessuno? :-)

  4. #4
    Utente di HTML.it L'avatar di Grino
    Registrato dal
    Oct 2004
    Messaggi
    739
    Codice PHP:
    <?php
    preg_match
    ('/<title>(.*?)<\/title>/',file_get_contents("http://www.google.it/"), $match);
    print_r($match[1]."
    "
    );

    preg_match('/<title>(.*?)<\/title>/'file_get_contents("http://www.html.it/"), $match);
    print_r($match[1]."
    "
    );
    ?>
    Ti reasta da realizzare la paginetta stupida per il form e sostituire alle stringhe con l'indirizzo web il contenuto del campo del form.
    Siamo sempre troppo gelosi delle nostre grandi piccole opere! - Grino inedito.
    Lavori e Lavoretti

  5. #5
    Utente di HTML.it L'avatar di Grino
    Registrato dal
    Oct 2004
    Messaggi
    739
    Segue del codice completo funzionante.
    Controindicazione:
    Se nel php.ini allow_url_fopen=0 non hai modo di accedere alla risorsa esterna come se fosse
    un file
    Il servizio di hosting potrebbe non permetterti di accedere a risorse esterne
    Codice PHP:
    <?php
    /**
     * @author Ciro Pellegrino <ciropellegrino@libero.it>
     * @license [url]http://opensource.org/licenses/gpl-license.php_GNU_Public_License[/url]
     * @version 1.0
     */

    $messaggio "";
    define('ind''indirizzo');
    if (isset(
    $_POST[ind]))
        if (
    preg_match('/^http:\/\/(([url]www.[/url])?(\w+.)+[a-z]{2,3})\/$/'$_POST[ind]))
            if ((
    $cont file_get_contents($_POST[ind])) !== false)
                if(
    preg_match('/<title>(.*?)<\/title>/'$cont$match))
                    
    $messaggio=$match[1];
                else
                    
    $messaggio="Non sono riuscito ad estrarre il titolo dal sito";
            else
                
    $messaggio="Impossibile recuperare l'indirizzo web specificato";
        else
            
    $messaggio="L'indirizzo non sembra essere un indirizzo web correttamente formattato";
    ?>
    <html lang="it">
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <title>Estratttore Nomi Web</title>
        </head>
        <body>
            <h1>Estrattore di titoli di pagine web</h1>
            [url="showcode.php"]Mostra i sorgenti[/url]
            <hr>
            <form action="index.php" method="post">
                <input name="indirizzo" value="<?php echo ((isset($_POST[ind])) ? $_POST[ind] : "Inserisci un indirizzo web"); ?>">
                <input type="submit" value="Estrai">
                

    Inserire indirizzi web completi del tipo [url]http://www.google.it/[/url]</p>
            </form>
            <hr>
            <h3><?php echo $messaggio?></h3>
        </body>
    </html>
    Siamo sempre troppo gelosi delle nostre grandi piccole opere! - Grino inedito.
    Lavori e Lavoretti

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    183
    grazie infinite... ora faccio qualche tentativo....
    ciao ciao

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    183
    nel primo caso ottengo un errore del tipo:
    Warning: preg_match() [function.preg-match]: Unknown modifier 't' in ....


    nel secondo esempio l'errore è:
    Warning: preg_match() [function.preg-match]: Unknown modifier '/' in ....

    sei sicuro del tuo codice?
    Grazie

  8. #8
    Utente di HTML.it L'avatar di Grino
    Registrato dal
    Oct 2004
    Messaggi
    739
    Si, sono sicuro del codice. E' solo che alcuni escape scompaiono quando invii le pagine al forum.

    Prendi da qui il sorgente
    Siamo sempre troppo gelosi delle nostre grandi piccole opere! - Grino inedito.
    Lavori e Lavoretti

  9. #9
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    183
    ora è ok!
    tutto chiaro... grazie ancora

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 © 2024 vBulletin Solutions, Inc. All rights reserved.