mini-community con aggiunta amici

  • Creatore Discussione Creatore Discussione steave67
  • Data di inizio Data di inizio

steave67

Utente Attivo
24 Ago 2008
148
0
0
Salve a tutti,
ho intenzione di creare una mini-community in cui gli utenti possono aggiungersi agli amici.
Ho cercato su internet ma ho trovato ben poco e niente di soddisfacente.

Secondo voi mi conviene fare una tabella in cui sono presenti i legami di amicizia?
A me non è venuto nient'altro in mente, ma questa opzione non mi sembra molto funzionale.

Grazie a tutti in anticipo :D

PS: era tanto che non programmavo in PHP, sono un po' arrugginito :p
 
Perché non è una soluzione efficiente? Crei una tabella che contenga tutte le relazioni tra gli utenti, con tre campi: uno per l'ID della relazione, uno per l'ID del primo utente e uno per l'ID del secondo utente. A questo punto per verificare se c'è una relazione tra gli utenti con ID 1 e 2 fai una query simile a questa:
Codice:
SELECT * FROM relazioni WHERE (utente_1 = 1 AND utente_2 = 2) OR (utente_1 = 2 AND utente_2 = 1)
 
Perché non è una soluzione efficiente? Crei una tabella che contenga tutte le relazioni tra gli utenti, con tre campi: uno per l'ID della relazione, uno per l'ID del primo utente e uno per l'ID del secondo utente. A questo punto per verificare se c'è una relazione tra gli utenti con ID 1 e 2 fai una query simile a questa:
Codice:
SELECT * FROM relazioni WHERE (utente_1 = 1 AND utente_2 = 2) OR (utente_1 = 2 AND utente_2 = 1)

Quindi la mia intuizione era giusta.
Pensavo ci fosse qualche altro modo di concatenare due utenti che non richiedesse l'utilizzo di un'altra tabella.
Dicevo che non è funzionale perchè pensavo fosse lenta come soluzione.
Grazie mille :fonzie:
 
A parte che il tuo problema non ha nulla a che fare con il php anche se poi è il linguaggio che usi per far 'comunicare' le pagine della tua applicazione web con il db.
Quindi premetto che è un problema di database.
Secondo: quello direi che è uno dei modi più efficienti per implementare quello che tu richiedi. In pratica è una tabella ricorsiva della tabella Utenti (o come l'hai chiamata quella dove ci sono salvato i dati degli utenti).

P.S. Se cerchi nel forum ci sono altre domande di questo genere con i relativi suggerimenti.
 
A parte che il tuo problema non ha nulla a che fare con il php anche se poi è il linguaggio che usi per far 'comunicare' le pagine della tua applicazione web con il db.
Quindi premetto che è un problema di database.
Secondo: quello direi che è uno dei modi più efficienti per implementare quello che tu richiedi. In pratica è una tabella ricorsiva della tabella Utenti (o come l'hai chiamata quella dove ci sono salvato i dati degli utenti).

P.S. Se cerchi nel forum ci sono altre domande di questo genere con i relativi suggerimenti.

Avevo cercato, ma avevo trovato solo persone che avevano fatto come me ma che avevano sbagliato a fare qualcosa.. Perciò pensavo ci fosse qualcosa di più efficiente dato che c'è sempre qualcosa che non va :p
Comunque anche per argomenti inerenti al MySQL e SQL io sono abituato a postare nella sezione PHP.
Scusa, non accadrà più :fonzie:
 

Discussioni simili