Visualizzazione dei risultati da 1 a 3 su 3

Discussione: problemaccio su join

  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2000
    Messaggi
    129

    problemaccio su join

    schematizzo, eseguo la join su 2 tabelle: 1)messaggi 2)profili

    ecco la query:

    SELECT messaggi.testo , profili.immagine
    FROM messaggi , profili
    WHERE messaggi.userid = profili.userid
    AND messaggi.loggato = '$_SESSION[userid]'

    la query restituisce tutti i messaggi inviati all'utente loggato e le associa l'immagine presa dalla seconda tabella, funziona bene ma, se l'utente che invia il messaggio cancella il suo account (sulla seconda tabella) ovviamente la query fallisce e non visualizzo i messaggi in precedenza inviati dall'utente stesso.

    La domanda è: devo necessariamente ristrutturare le due tabelle o posso in qualche modo gestire queste eccezzioni all'interno della query?



    :master:

  2. #2
    prova
    SELECT
    messaggi.testo,
    profili.immagine
    FROM messaggi
    LEFT OUTER JOIN profili ON messaggi.userid = profili.userid
    WHERE messaggi.loggato = '$_SESSION[userid]'
    Qualunque imbecille può inventare e imporre tasse. (Maffeo Pantaleoni)

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2000
    Messaggi
    129
    ottimo consiglio webus!!!! funziona alla grande.

    Vi pongo ancora una altra questione (sono alle prese con il mio primo forum):
    quando un utente elimina il suo account ho 2 strade:

    1- eliminare tutti i suoi dati personali ma mantenere il record con il nick, in questo modo tutto lo storico dei suoi messaggi del forum conserverà il suo nome, ma col tempo il db sarà pieno di nick non attivi e non riutilizzabili da nessuno.

    2- la seconda strada l'ho vista su alcuni social network (quindi con logiche un poco diverse dai forum), in pratica si cancella definitivamente il record dell'account e tutti i messaggi inviati con quel nick vengono aggiornati con un valore del tipo "utente non più attivo", questo ovviamente comporta nel caso di una moltitudine di messaggi un update pesantissimo, ma rende disponibile il nick per una nuova registrazione e ripulisce il db da utenti fantasma.

    Cosa ne pensate?

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.