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

    Associare commenti a news

    Ciao a tutti.

    Ho 2 tabelle

    NEWS id testo autore ......
    COMMENTI id testo autore idnews


    La pagina che ricava una determinata news è news.php?id=numero.
    Vorrei far apparire nella stessa pagina anche i commenti con idnews(tabella commenti) =id (tabella news)

    Ho provato ma lo script mi funziona in parte ossia mi fa vedere i commenti giusti ma li ripete 5 volte dove sbaglio?




    Codice PHP:
    $result mysql_query("SELECT * FROM news, commenti WHERE idnews = $id")
    or die(
    "Query non valida: " mysql_error());
    while (
    $row mysql_fetch_array($result))
    echo 
    "
    <table class=newstab>
      <tr>
        <td class=newspost>[i]Postato il 
    $row[datacomm] da $row[autorecomm][/i]</td>
      </tr>
      <tr>
        <td class=newstext>
    $row[testocomm]</td>
      </tr>
    </table>


    "

    Grazie

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Prova a usare questa query:

    select news.testo_news, news.autore_news, commenti.testo_commento,
    commenti.autore_commento from commenti, news where news.id = commenti.idnews;

    Ho rinominato i campi testo e autore delle due tabelle perchè
    ho notato che eseguendo la query sulle due tabelle ottenevo come
    intestazioni dei campi autore1 e testo1.
    Comunque non credo che ciò generasse problemi.
    Spero di aver capito ciò che ti serviva.
    Ciao

  3. #3
    Utente di HTML.it L'avatar di bart87
    Registrato dal
    Apr 2004
    Messaggi
    184
    oppure fai 2 query separate per le due tabelle..
    Nunc Bibendum est!

  4. #4
    Codice PHP:
    $result mysql_query("SELECT * FROM news WHERE id = $_GET[id]"
    or die(
    "Query non valida: " mysql_error()); 
    if(
    $row mysql_fetch_array($result)) {
    echo 

    <table class=newstab> 
      <tr> 
        <td class=newspost>[i]Postato il 
    $row[datacomm] da $row[autorecomm][/i]</td> 
      </tr> 
      <tr> 
        <td class=newstext>
    $row[testocomm]</td> 
      </tr> 
    </table> 

     
    "
    ;
    $qcomm mysql_query("SELECT * FROM commenti WHERE idnews = $_GET[id]"
    or die(
    "Query non valida: " mysql_error());
    while(
    $row mysql_fetch_array($qcomm)) {
    echo 
    "
    <table class=newstab> 
      <tr> 
        <td class=newspost>[i]Postato da 
    $row[autorecomm][/i]</td> 
      </tr> 
      <tr> 
        <td class=newstext>
    $row[testocomm]</td> 
      </tr> 
    </table> 

     
    "
    ;
    }


    naturalmente non sono sicuro dei nomi che hai dato ai campi... quindi ricontrollateli... e indenta bene

    ciao
    «Se leggi dimentichi, se vedi capisci, se fai impari» Piaget

  5. #5
    Grazie ragazzi siete stati gentilissimi

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.