Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    617

    Creare pagina articolo da link!

    Salve raga vorrei chiedervi aiuto per una questione spinosa(per me ovviamente).

    Ho fatto una tabella mysql così: id immagine titolo articolo autore data

    ora nell'index mi vado a tirare fuori tutto e con css impagino come mi pare!

    ogni titolo dovrà avere il link alla pagina dove verrà visualizzato l'articolo completo.

    Fin qui la cosa è facile.Il cruccio mi è venuto pensando che così facendo devo però creare una pagina nuova per ogni articolo e questo mi pare un po' casinista come cosa.

    C'è un modo per creare una pagina dove viene visualizzato un articolo a seconda del link che premo nell'index?

    Spero di essere stato chiaro, so che magari per voi è na cosa semplice ma io sono alle prime armi.
    Grazie anticipatamente.

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2008
    Messaggi
    1,317
    perchè creare una pagina per articolo ( per lo più che salvi un id univoco ) se puoi fare una cosa come:

    >>> URL
    index.php?articolo_id=3
    <<< URL

    >>> PHP
    Codice PHP:
    // Seleziona i dati dell'articolo
    $query mysql_query'SELECT * FROM articoli WHERE articolo_id=' intval$_GET['articolo_id'] ) );

    // Controlla se l'articolo esiste
    if ( mysql_num_rows$query ) == )
    {
          
    // Estra i dati dell'articolo
          
    $extract mysql_fetch_array$query );
          
         
    // Stampa l'articolo
         
    print 'Nome: ' $extract['nome_articolo'] . '
    '
    ;
         print 
    'Articolo: ' $extract['contenuto_articolo'] . '
    '
    ;
         print 
    'Data:' $extract['data_articolo'] . '
    '
    ;

    <<< PHP

    Tuttavia se vuoi proprio salvare l'articolo in una pagina html, per evitare di fare 1a query:

    >>> PHP
    Codice PHP:
    // Anti-Hacker
    $id intval$_GET['articolo_id'] );

    // Seleziona i dati dell'articolo
    $query mysql_query'SELECT * FROM articoli WHERE articolo_id=' $id ) );

    // Controlla se l'articolo esiste
    if ( mysql_num_rows$query ) == )
    {
          
    // Estra i dati dell'articolo
          
    $extract mysql_fetch_array$query );
          
         
    // Controlla se NON esiste l'articolo in formato HTML salvato nella cartella /articolo/
         
    if ( ! file_exists$file "./articoli/$id.html" ) )
         {
    // Salva l'articolo in una variabile
    $articolo = <<<ARTICOLO
    Nome: $extract[nome_articolo] 

    Articolo: 
    $extract[contenuto_articolo] 

    Data: 
    $extract[data_articolo]

    ARTICOLO;
          
              
    // Salva l'articolo in una pagina html
              
    $fp fopen$file 'wb' );
              
    fwrite$fp $articolo );
              
    fclose$fp );
         }

    <<< PHP


  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    617
    Nono, io voglio il primo metodo, voglio fare solo una pagina che sia uguale per tutti gli articoli completi ma che, a seconda del titolo che clicchi nell'index, mi visualizzi quell'articolo quel titolo(di nuovo) e l'immagine a esso correlata.

    Grazie ora provo e ti faccio sapere.

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    617
    Non mi funziona, ma credo xchè non sia lo stesso modo che moglio utilizzare io.

    La variabile del titolo così come l'immagine e l'articolo devono essere passati tramite il link salvato nel database.

    faccio un esempio pratico per farti capire meglio:

    id 5

    immagine : <a href="articolo.php? a=5>titolo completo</a>

    articoloparziale:<a href="articolo.php? a=5>solo parte dell'articolo per poi piazzare alla fine il classico.......continua

    articolocompleto:tutto l'articolo

    autore: autore dell'articolo

    Ora nell'index viene visualizzato titolo,articolo parziale, autore.Io vorrei che cliccando sul titolo o sull'immagine mi si mandi alla pagina articolo.php(che in pratica è vuota) e mi si visualizzi automaticamente: immagine(di nuovo) titolo(di nuovo) e articolo completo.

    Girovagando in rete ho capito che mi devo portare delle variabili attraverso il link ma non so come scriverla ma soprattutto non so come farla leggere dalla pagina articolo.php in automatico.

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    617
    Allora, avrei fatto una cosa del genere.

    Nell'index.php ho messo che ogni articolo,titolo e immagine tirata fuori dal database è lincata alla pagina articolo.php(lo devo fare per forza perchè questa pagina ha altre caratteristiche di impaginazione)e il link l'ho scritto così <a href=articolo.php?id=$id>titolo</a> ovviamente $id non è altro che il numero dell'id a cui fa riferimento quel titolo o quell'immagine o quell'articolo all'interno del database.
    Fin qui tutto bene(credo), quando clicco su un titolo nel browser compare articolo.php?id=17 in questo caso il 17 è proprio il numero id dove è salvato questo artiolo.Il problema sorge per farlo leggere alla pagina di arrivo.

    Ho rifatto la query praticamente uguale a quella di index con l'unica differenza che ho aggiunto un where in modo da fargli leggere solo l'id che ha ricevuto da index.Mi da errore, io credo sia perchè la mia versione php è la 5.2.8 per questo vi posto lo script che ho fatto nella pagina articolo.php:

    <?php
    mysql_query('set names utf8');
    $lettura_risultati=mysql_query("select date_format(data, '%d-%m-%Y') as data_formattata,titolo,id,articolo,immagine,autore FROM news WHERE id='".$_GET['id']."");
    while($scatola_temporanea=mysql_fetch_array($lettu ra_risultati)){
    $titolo=$scatola_temporanea['titolo'];
    $immagine=$scatola_temporanea['immagine'];
    $id=$scatola_temporanea['id'];
    $articolo=$scatola_temporanea['articolo'];
    $data=$scatola_temporanea['data_formattata'];
    $autore=$scatola_temporanea['autore'];

    echo"$immagine$titolo$articolo";
    }
    ?>

    secondo me il problema è questo:WHERE id='".$_GET['id']."

    Qualcuno ne sa qualcosa?
    Grazie anticipatamente.

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    617
    Mi auto rispondo a favore dei posteri, con la nuova versione php il comando per il $_GET è questo: WHERE id='$_GET[id]'

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.