Webdesign in Siegen

Community-Freundschaft

Fragen zum Thema PHP können hier gestellt werden

Moderator: Basti

Community-Freundschaft

Beitragvon =Max= am 14.04.2008, 14:26

Meine Frage hat (noch) wenig mit Programmieren zu tun - erstmal will ich wissen ob das die beste bzw. einfachste Lösung ist:

In meinem Usersystem sollen Mitglieder die Möglichkeit haben, anderen Leuten die Freundschaft anzubieten. Habe mir da Folgendes gedacht:

MySQL-Tabelle: mit_friendships

id - friend1 - friend2 - time


Variante 1:
Klickt User1 bei User2 auf Freundschaft anbieten, so wird id, friend1 und time beschrieben (was reinkommt ist wohl klar)!
Nimmt User2 an wird auch friend2 beschrieben

Variante2:
Klickt User1 bei User2 auf Freundschaft anbieten, so wird id, friend1, friend2 und time beschrieben (wieder klar was reinkommt :) )!
Nimmt User2 an wird noch mal ein Datensatz eingefügt blos friend1 und friend2 vertauscht - dann wird blos das auslesen der Freunde auf der Userseite evtl bisschen kompliziert (Denkarbeit :D)

Welche Variante bevorzugt ihr, bzw. habt ihr eine bessere Variante?

Lg,
MAX
=Max=
Mitglied
 
Beiträge: 404
Registriert: 14.01.2007

Re: Community-Freundschaft

Beitragvon Eyecatcher am 14.04.2008, 14:52

MySQL-Tabelle: mit_friendships

id - friend1 - friend2 - time - angenommen

Beim abschicken ALLE Werte ausfüllen, wenn angenommen wird, angenommen auf true oder 1 setzen, was du willst. Ist auf jeden Fall sauberer so!
“Freude an der Arbeit läßt das Werk trefflich geraten”
» Aristoteles
Benutzeravatar
Eyecatcher
Mitglied
 
Beiträge: 287
Registriert: 01.03.2008
Wohnort: Espelkamp

Re: Community-Freundschaft

Beitragvon =Max= am 14.04.2008, 14:54

Stimmt, das wäre eine saubere Variante :)

Ich denke so mache ich es!

Danke,

Max - Bei Problemen melde ich mich nochmal :P
=Max=
Mitglied
 
Beiträge: 404
Registriert: 14.01.2007

Re: Community-Freundschaft

Beitragvon Avedo am 14.04.2008, 15:10

In friend1 und friend2 solltest du die ID der User speichern. Das sorgt dafür, dass es nicht zu verwechslungen kommen kann.
MfG, Andy
Ich bin zu Mimis Religion konvertiert!
I'm so tired of slitting the throats of people calling me a violent psychopath.
Benutzeravatar
Avedo
Mitglied
 
Beiträge: 554
Registriert: 09.12.2007
Wohnort: Göttingen

Re: Community-Freundschaft

Beitragvon =Max= am 14.04.2008, 15:14

Ja, so habe ich das sowieso gedacht :) Die Namen für die zwei Spalten sind unglücklich gewählt - komme aber damit am besten klar!
=Max=
Mitglied
 
Beiträge: 404
Registriert: 14.01.2007

Re: Community-Freundschaft

Beitragvon =Max= am 14.04.2008, 19:49

Noch eine Frage:

Wie müsste die Datenbankabfrage heißen, wenn ich die Freunde eines Users ausgeben möchte. Schließlich steht der Name einmal in friend1 und ein anderes mal in friend2
=Max=
Mitglied
 
Beiträge: 404
Registriert: 14.01.2007

Re: Community-Freundschaft

Beitragvon .wired am 14.04.2008, 20:21

Ich weiß jetzt nicht, ob ich dein Konzept richtig verstanden habe, aber erstens sehe ich bei dir keine Freunde sondern nur einen Freund, und zweitens müsste demnach die Datenbankabfrage ungefähr so lauten:

Code: Alles auswählen
SELECT friend2 FROM *Tabelle* WHERE friend1 = '$eingeloggter_user'


lG .wired
Bild Bild
Benutzeravatar
.wired
Mitglied
 
Beiträge: 332
Registriert: 24.06.2007
Wohnort: Diekholzen

Re: Community-Freundschaft

Beitragvon =Max= am 15.04.2008, 06:35

Ich hab mir gestern ja noch überlegt, dass ja User1 mal in Friend1 und mal in Friend2 steht (ja nachdem ob er FS angeboten hat oder angenommen hat)

Ich glaube es müsste so heißen:

Code: Alles auswählen
SELECT * FROM mit_friendship WHERE friend1 = $id && status = 1 OR friend2 = $id && status = 1 ORDER BY id DESC
=Max=
Mitglied
 
Beiträge: 404
Registriert: 14.01.2007

Re: Community-Freundschaft

Beitragvon Eyecatcher am 15.04.2008, 10:31

Ja Max dein Ansatz ist richtig, ich bin mir aber nicht 100% sicher, denn ich glaube du musst hier mit Klammern arbeiten.
Probiers mal einfach so
Code: Alles auswählen
SELECT * FROM mit_friendship WHERE friend1 = $id || friend2 = $id && status = 1 ORDER BY id DESC
“Freude an der Arbeit läßt das Werk trefflich geraten”
» Aristoteles
Benutzeravatar
Eyecatcher
Mitglied
 
Beiträge: 287
Registriert: 01.03.2008
Wohnort: Espelkamp

Re: Community-Freundschaft

Beitragvon =Max= am 15.04.2008, 15:20

Joa ich würde es natürlich mit || machen aber heute früh wars so früh

Achja was ich gerade sehe: Die Forumzeit ist falsch um 5:35 hab ich noch geschlafen ;)
=Max=
Mitglied
 
Beiträge: 404
Registriert: 14.01.2007

Re: Community-Freundschaft

Beitragvon Eyecatcher am 15.04.2008, 17:34

Hehe is eher dein Fehler. Musst sie in den Einstellungen auf GMT +1 stellen
“Freude an der Arbeit läßt das Werk trefflich geraten”
» Aristoteles
Benutzeravatar
Eyecatcher
Mitglied
 
Beiträge: 287
Registriert: 01.03.2008
Wohnort: Espelkamp

Re: Community-Freundschaft

Beitragvon =Max= am 16.04.2008, 06:35

Das habe ich schon nachgeschaut

Meine Einstellung:

GMT + 1 (Mitteleuropäische Zeit)
=Max=
Mitglied
 
Beiträge: 404
Registriert: 14.01.2007

Re: Community-Freundschaft

Beitragvon Basti am 16.04.2008, 15:06

=Max= hat geschrieben:Das habe ich schon nachgeschaut

Meine Einstellung:

GMT + 1 (Mitteleuropäische Zeit)


Auch wenns nichts mehr mit dem Thema zu tun hat. Derzeit haben wir Sommerzeit ;)
Wenn du die aktivierst stimmt die Zeit auch.
Benutzeravatar
Basti
Moderator
 
Beiträge: 1889
Registriert: 15.06.2006
Wohnort: Rheinbreitbach

Re: Community-Freundschaft

Beitragvon =Max= am 16.04.2008, 15:33

Ok danke hm xD Ok :)
=Max=
Mitglied
 
Beiträge: 404
Registriert: 14.01.2007


Zurück zu PHP

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast