• User

    Totale valori db diverso da risultato visualizzato

    Caio a tutti,
    Premessa....sto studiando il php da qualche mese....
    Tra prove ed altro non riesco a capire l'errore nel mio codice.
    Il problema è il seguente..
    eseguo la seguente query per visualizzare tutti i titolo dell'autore, ad esempio con id_autore 1.

    $query="SELECT * FROM messaggi where id_autore like '".$id_autore."'";

    Nel totale dei messaggi scritti da quest'ltimo mi da il risultato giusto (cioè n° 4), ma nella tabella html che richiamato tramite ciclo while mi da come risultao solo 3 messaggi.
    Da cosa può dipendere??aiuto!!!GRAZIE

    Questo è il ciclo che creo:

    <table width="60%" border="0" align="center" cellpadding="2" cellspacing="2" bordercolor="#0033CC" bgcolor="#000099">
    <tr>
    <td width="108" bgcolor="#000099"><div align="center"><strong><font color="#FFFFFF">Titolo</font> </strong></div></td>
    </tr>
    <?
    while($rigo=mysql_fetch_array($risultato)){
    ?>
    <tr>

    <td height="35" bgcolor="#FFFFFF"><div align="center"><font color="#000099">
      <?=$rigo['titolo_messaggio']?>
    </font></div></td>
    

    </tr>

    <?
    }
    ?>
    </table>


  • User Attivo

    Ciao.

    Prova a mettere questo:

    $query="SELECT * FROM messaggi where id_autore = '".$id_autore."'";


  • User

    @shira said:

    $query="SELECT * FROM messaggi where id_autore like '".$id_autore."'";

    Caio anche a te shira 😄 😄

    penso che la tua query debba essere

    $query="SELECT * FROM messaggi where id_autore = $id_autore


    like si usa per la ricerca di una stringa all'interno di un campo

    where nome_autore like %filppo% (trova Rossi filippo e filippo Rossi )

    per trovare uno specifico id_autore devi usare l'uguaglianza where .... = ...


  • User

    prima di ogni cosa..grazie per avermi risposto.

    ho provato entrambi gli esempi....ma non vanno.
    Addirittura il secondo mi da errore...
    Sto impazzendo...

    a questo punto vi posto l'intero codice...se avete la possibilità vi prego di provarlo da voi, in quanto io l'ho provato su due server....

    il link della pagina autore che rinvia alla pagina messaggi:
    <a href="messaggi.php?id_autore=<?=$rigo['id_autore']?>">vedi</a>

    il codice php della pagina messaggi:

    <?
    $id_docente=$_REQUEST['id_autore'];
    $query="SELECT * FROM messaggi where id_autore = '".$id_autore."'";
    $risultato=mysql_query($query);
    $rigo=mysql_fetch_array($risultato);
    $numeri=mysql_num_rows($risultato);
    ?>
    </em>
    <p align="center">  </p>
    <? include("menu.php"); ?>
    <p align="center"><em><font size="+1" color="#000099">Sono presenti n° <?=$numeri?> messaggi </font></em>
    </p>
    <br>
    <table width="60%" border="0" align="center" cellpadding="2" cellspacing="2" bordercolor="#0033CC" bgcolor="#000099">
    <tr>
    <td width="108" bgcolor="#000099"><div align="center"><strong><font color="#FFFFFF">Titolo</font> </strong></div></td>
    <td width="150" bgcolor="#000099"><div align="center"><strong><font color="#FFFFFF">data</font> </strong></div></td>

     </tr>
    

    <?
    while($rigo=mysql_fetch_array($risultato)){
    ?>
    <tr>

    <td height="35" bgcolor="#FFFFFF"><div align="center"><font color="#000099">
      <?=$rigo['titolo_mess']?>
    </font></div></td>
    <td bgcolor="#FFFFFF"><div align="center"><font color="#000099">
      <?=$rigo['data_mess']?>
    </font></div></td>
    

    </tr>

    <?
    }
    ?>
    </table>


  • User

    adesso funziona....c'era una ripetizione....
    grazie comunque.