<div dir="ltr">Grazie a tutti ho risolto con 3 query.<div><br><div><div>-- SELEZIONO TUTTI GLI ULTIMI MESSAGGI DI TUTTE LE CONVERSAZIONI DI UN UTENTE</div><div>-- LISTA MESSAGGI COME FACEBOOK...</div><div>SELECT * </div><div>FROM chat </div><div>WHERE ( (id_user = 1) OR (id_user_to = 1) ) </div><div>AND created_at in (</div><div>        SELECT MAX(created_at) </div><div>        FROM chat </div><div>        WHERE id_chatconv in (</div><div>                SELECT id_chatconv </div><div>                FROM userchat WHERE id_user = 1</div><div>        ) </div><div>        GROUP BY id_chatconv</div><div>) </div><div>ORDER BY (created_at) DESC;</div><div><br></div><div><div>-- TUTTE LE CONVERSAZIONI FRA ME ED UN ALTRO UTENTE </div><div>-- CHAT PRIVATA COME FACEBOOK</div><div>SELECT * </div><div>FROM chat</div><div>WHERE (id_user = 1 AND id_user_to = 2) </div><div>        OR</div><div>      (id_user = 2 AND id_user_to = 1)</div><div>ORDER BY (created_at) ASC; </div></div><div><br></div><div><div>-- TUTTI GLI UTENTI CON CUI HO PARLATO</div><div>SELECT id_user_to as ids </div><div>FROM chat </div><div>WHERE id_user = 1 </div><div>        UNION </div><div>SELECT id_user as ids </div><div>FROM chat </div><div>WHERE id_user_to = 1 </div><div>GROUP BY ids;</div></div><div><br></div><div><span style="font-size:12.8000001907349px">> Cosa significa chat multiple private tra 2 individui ?</span><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px"><b>Pietro Bertera</b> vedo di spiegarmi meglio , effettivamente multiple private tra 2 individui non ha senso :-).</span></div><div><span style="font-size:12.8000001907349px"><br></span></div><div><span style="font-size:12.8000001907349px">Ogni utente può vedere solo i messaggi che ha spedito o ricevuto da un'utente </span></div><div><span style="font-size:12.8000001907349px">Quindi se Pippo scrive a Topolino</span></div><div><span style="font-size:12.8000001907349px">e </span><span style="font-size:12.8000001907349px">Topolino scrive a Pluto</span></div><div><span style="font-size:12.8000001907349px"><br></span></div><div><span style="font-size:12.8000001907349px">Pippo vede solo il messaggio inviato che ha inviato a Topolino e</span></div><div><span style="font-size:12.8000001907349px">Topolino vede il messaggio che ha inviato a Pluto e il messaggio che ha ricevuto da Pippo</span></div><div><span style="font-size:12.8000001907349px">Pluto vede il messaggio che ricevuto da Topolino.</span></div><div><span style="font-size:12.8000001907349px"><br></span></div><div><span style="font-size:12.8000001907349px">Che poi è quello che succede su Facebook o gmail , quando scrivi invii un messaggio a qualcuno.</span></div><div><br></div><div><span style="font-size:12.8000001907349px">> Si tratta di un esercizio didattico o qualcosa di "reale" ? perché</span><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">> fuori ci sono una marea di strumenti già fatti..</span><br></div><div><span style="font-size:12.8000001907349px">Purtroppo non è un esercizio.</span></div><div><span style="font-size:12.8000001907349px">Ho visto in giro ed ho preso spunto un po' qua e la , perché oltre a quello che ho scritto sopra "i pazzi" che mi hanno commissionato il lavoro ( la chat è solo un piccolo pezzo del lavoro) hanno deciso ( vai a capire perché) che </span></div><div><span style="font-size:12.8000001907349px">1) I messaggi funzionano cosi: io invio il messaggio e non posso inviartene un'altro fino a quando tu non mi rispondi e così via.</span></div><div><span style="font-size:12.8000001907349px">2) Tutti i messaggi devo essere salvati su db </span></div><div><span style="font-size:12.8000001907349px">3) Ogni messaggio non può essere più di 160 caratteri</span></div><div><span style="font-size:12.8000001907349px"><br></span></div><div><span style="font-size:12.8000001907349px"><br></span></div><div><span style="font-size:12.8000001907349px"><b>Gianni Carabelli</b></span></div><div>> <span style="font-size:12.8000001907349px">Questo è in rails, che linguaggio usi lato server?</span></div><div><span style="font-size:12.8000001907349px">Uso Symfony , quindi PHP</span></div><div><br></div><div>><span style="font-size:12.8000001907349px">Cmq lo schema lo puoi rubare ugualmente.</span></div><div><span style="font-size:12.8000001907349px">Figo hanno fatto più o meno come avevo fatto io.</span></div><div><br></div><div>> <span style="font-size:12.8000001907349px">1- roba senza db. Over xmpp o comet server:</span></div><div><span style="font-size:12.8000001907349px">Niente xmpp o roba esterna... il perché non è dato saperlo.... voglio che tutto passi da loro e che sia salvato su db</span></div><div><br></div><div class="gmail_extra"><b>Elena</b></div><div class="gmail_extra"><span style="font-size:12.8000001907349px">> infatti, che cos'ha di male xmpp, che già c'è e ci han lavorato in tanti?</span><br style="font-size:12.8000001907349px">><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">> e sì, se vuoi spiare le chat in questione puoi salvare i log sul server</span><b><br></b></div><div class="gmail_extra"><span style="font-size:12.8000001907349px">Fosse per me avrei scelto anche io xmpp... e per spiare ... personalmente a me non interessa...</span></div><div class="gmail_extra"><br></div></div></div><div class="gmail_extra"><br></div><div class="gmail_extra">Ancora grazie a tutti.</div></div>