kostenloser Webspace werbefrei: lima-city


Denkanstoß (PHP)

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    christian1603

    Kostenloser Webspace von christian1603

    christian1603 hat kostenlosen Webspace.

    Hallo LC,
    sry erstmal für den Titel "Denkanstoß (PHP)".
    Mir ist echt kein besserer eingefallen.

    Mein Problem:
    Ich habe eine kleine community geschrieben. Dort kann man Freunde suchen und in seine Freundschaftsliste hinzufügen.
    MYSQL Eintrag : Freund 1: " Meine ID" Freund 2: "Freundes ID"

    wenn ich nun meine Freunde auflisten will:


    $sql2 = "SELECT ".  
        " * ".  
      "FROM ".  
        "freunde ".  
      "WHERE ".  
        "(freunde1 like '"Meine ID."')";

    soweit so gut.
    Nun kann jeder User einen "feed" erstellen. Diese sollen nur von Freunden lesbar sein.
    MYSQL eintrag : Autor: "Autorid vom feed" feed: "der Text"

    Nun habe ich ein problem mit den auslesen der feeds.
    Die feeds sollen alle nach Datum sortiert ausgegeben werden.

    Mein versuch die feeds "meiner Freunde" auszulesen ist gescheitert.
    Ich konnte sie zwar auslesen aber nur Freundes weiße.
    z.b. :
    Freund 1 -> Feed1 (Datum 01.01.2010) Feed3 (Datum 03.01.2010)...
    Freund 2 -> Feed2 (Datum 02.01.2010) Feed4 (Datum 05.01.2010)...
    Freund 3 -> Feed5 (Datum 06.01.2010) Feed6 (Datum 09.01.2010)...

    Ich will die feeds aber nicht nach Freund sortieren sondern nach Datum sortiert.
    Und das kriege ich nicht hin -.-
    also :
    .... usw...
    Feed5 (Datum 06.01.2010) von Freund 3
    Feed4 (Datum 05.01.2010) von Freund 2
    Feed3 (Datum 03.01.2010) von Freund 1
    Feed2 (Datum 02.01.2010) von Freund 2
    Feed1 (Datum 01.01.2010) von Freund 1



    Hoffe ihr versteht was ich meine....hat jemand ne idee?

    edit: ähnlich wie bei facebook

    Beitrag zuletzt geändert: 27.12.2010 0:10:08 von christian1603
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Solange du das Datum auch in der Datenbank hast mach doch einfach zusätzlich noch ORDER BY datumtabelle oder wo liegt da das Problem?
  4. Autor dieses Themas

    christian1603

    Kostenloser Webspace von christian1603

    christian1603 hat kostenlosen Webspace.

    frnkymen schrieb: Solange du das Datum auch in der Datenbank hast mach doch einfach zusätzlich noch ORDER BY datumtabelle oder wo liegt da das Problem?


    Das stimmt schon....
    Mein Problem ich muss erst die Id's meiner "Freunde" aus lesen. Dann muss ich die feeds Tabelle abfragen. Von denn Feeds soll er nur die meiner Freunde ausgeben. Ich kann nur die von einzelner Freunde auslesen. Ich will aber gleich alle feeds von allen meinen Freunden auslesen...
  5. christian1603 schrieb:
    Ich will die feeds aber nicht nach Freund sortieren sondern nach Datum sortiert.
    Und das kriege ich nicht hin -.-
    also :
    .... usw...
    Feed5 (Datum 06.01.2010) von Freund 3
    Feed4 (Datum 05.01.2010) von Freund 2
    Feed3 (Datum 03.01.2010) von Freund 1
    ...


    Also du musst dich echt in deinem Anfangspost entscheiden.

    like kannst du ja auf keine id's anwenden da du damit nur in string suchen kannst.

    Du kannst aber die gefundenen Datensätze für den Benutzer sortiert nach Datum nachträglich in der while Schleife mit weiteren Daten aus anderen array's vergleichen und die daraus resultierenden Ergebnisse neu sortieren oder dem Benutzer verknüpft ausgeben.

    Edit:
    Was du sonst auch machen kannst um deinen Knoten zu lösen ist mit einem Programm wie z.B. mysql workbench ein Diagramm deiner Abfrage zeichnen
    http://img2.imagebanana.com/img/tz1pq53m/thumb/mysql_workbenche1263924181399.jpg
    Mit den generierten Abfragen kannst du dann selbst die Datensätze weiter bearbeiten.

    Beitrag zuletzt geändert: 27.12.2010 15:34:13 von frnkymen
  6. Ich glaube, du suchst eine SQL Abfrage die so aussieht:

    SELECT *
     FROM freunde AS fr, feeds AS fe
     WHERE fr.freunde1 = "meine id" AND fe.author = fr.freunde2
     ORDER BY fe.datum


    Probier das mal mit phpMyAdmin aus. Die Spaltennamen musst du vermutlich noch entsprechend anpassen.

    Zur Erklärung: Wenn du eine SELECT Anfrage über 2 Tabellen machst, wird jede Zeile der einen Tabelle mit jeder Zeile der anderen Tabelle verknüft. Durch die passende WHERE Bedingung werden dann die entsprechenden Zeilen herausgefiltert.
  7. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!