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

    Visualizzo troppi record

    Nel mio database ho tre tabelle:
    Utenti con nome e cognome
    Titolo con titolo e data
    Messaggio con Messaggio, data, allegato

    recupero i dati tramite la funzione
    Codice PHP:
    function lettura($id)      
    {        
    $sql 'SELECT u.*, t.*, m.*  FROM  messaggi m, titolo t, utenti u
              WHERE m.id_titolo ='
    .$id;                  
    $result $this->db_query($sql);         
    return 
    $result;     } 
    Il problema è che quando vado a stampare i dati me ne stampa più del dovuto.

  2. #2
    con questa JOIN implicita fai una bella moltiplicazione dei risultati. usa una JOIN esplicita

  3. #3
    Scusa, ma potresti fare un esempio

  4. #4
    come sono relazionate le tre tabelle?

  5. #5
    Originariamente inviato da optime
    come sono relazionate le tre tabelle?
    Cosi:

    Titolo collegato con id_utente che si riferisce a id della tabella utenti
    Messaggio collegato con id_titolo e id_utente tispettivamente si riferiscono a id della tabella titolo e utente

  6. #6
    servono le corrispondenze dei campi

  7. #7

    Re: Visualizzo troppi record

    Ho provatp cosi ma ancora duplica record
    Codice PHP:
    function lettura($id)
    {         
        
    $sql ='SELECT u.*, t.*, m.*
        FROM messaggi m 
        INNER JOIN titolo t ON m.id_titolo =t.id
        INNER JOIN utenti u
        WHERE  t.id ='
    .$id;
        
    $result $this->db_query($sql);
        return 
    $result;

    Le mie tabelle
    Utenti con id, nome, e cognome
    Titolo con id, itolo, data e id_utente (che si collega a id della tabella utenti)
    Messaggio con id Messaggio, data, allegato, id_titolo (che si collega a id della tabella titolo) e id_utente (che si collega a id della tabella utenti)


  8. #8
    SELECT u.*, t.*, m.*
    FROM messaggi m
    INNER JOIN titolo t ON m.id_titolo=t.id
    INNER JOIN utenti u ON (m.id_utente=u.id AND t.id_utente=u.id)
    WHERE t.id ='.$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.