Ankündigung

Einklappen
Keine Ankündigung bisher.

Freundesliste - Mehrere Freunde anzeigen

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Freundesliste - Mehrere Freunde anzeigen

    Hallo Leute,

    ich habe zurzeit ein kleines Problem. Ich habe ein kleines Profilsytsem erstellt (was auch funktioniert) (Profil kann immer mit ?profil=NameUser aufgerufen werden), nun würde ich gerne eine Freundesliste adden.

    Mein Code:

    Vorab: $profil ist der aktuelle Benutzername des aktuellen Profils

    PHP-Code:
    $sql2="select you, friend, image from friends where you='$profil'";
    $result2=mysql_query($sql2);
    $row2=mysql_fetch_row($result2);
    $string "";
     while (
    $row2 = @mysql_fetch_assoc($result2)) {

        
    $string "<a href='?profil=$row2[1]'>$row2[1]</a>";
      } 
    // while Ende 
    ... später wird dann ausgegeben:

    PHP-Code:
    echo $string
    Ich habe eine Tabelle mit YOU (der Benutzer, zu dem der Freund gehört), FRIEND (der Freund, der in der Liste angezeigt werden soll) und IMAGE (das Profilimage, verkleinert, habe ich noch nicht eingebaut).

    Also sogesehen will ich mit den Code die Liste anzeigen, aber mehrere Freunde, nicht nur einen.

    Deshalb habe ich es mit einer WHILE-Schleife probiert, aber das ganze funktioniert nicht.

    Ich weiss, für welche ich das bestimmt Lachhaft, aber da ich noch ein Anfänger bin hoffe ich, dass ihr mir helfen könnt.

    Vielen Dank im Voraus.

    Mfg
    Epic

  • #2
    Hast du dir mal dein

    PHP-Code:
    error_reportingE_ALL E_STRICT ); 
    ini_set"display_errors"TRUE); 
    eingestellt? Mache mal bitte das @ vor der mysql Funktion da weg, dass unterdrückt eine mögliche Fehlermeldung.

    Außerdem was versuchst du eigentlich mit dem code? Also ich weis nicht ob ich mich irre, aber ich glaube das Script kommt gar nicht bis zur While Schleife weil es schon beim

    PHP-Code:
    $row2 mysql_fetch_row($result2); 
    hängen bleibt.

    Mache das mal weg und dann dürften dir schon mal alle Datensätze ausgegeben werden.

    Außerdem ist deine Abfrage anfällig für SQL In jections. Warum fragst du überhaupt nach dem Benutzernamen ab und nicht nach der ID?

    Gruß Litter
    Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
    [URL]http://www.lit-web.de[/URL]

    Kommentar


    • #3
      Also zuerst setz mal die Vorschläge von litterauspirna um.
      Dann:
      Wenn du hier nach Hilfe fragst und schon sagst "aber das ganze funktioniert nicht", dann sag doch auch, WAS nicht funktioniert.
      Also was steht in der Ausgabe oder welche eventuelle Fehlermeldung bekommst du etc.

      So, weiter...
      In deiner WHILE-Schleife überschreibst du permanent die Variable $string wieder, d.h. am Ende wirst du IMMER nur ein Ergebnis, sprich einen Freund, als Ausgabe bekommen.
      Du musst $string erweitern, nicht überschreiben.

      PHP-Code:
      $string .= "<a href='?profil=$row2[1]'>$row2[1]</a>"
      "Nein, nein das Beste an Zombieland ist: Keine Facebook-Status-Updates mehr.
      'Rob Curtis freut sich schon auf Freitag', wen interessierts?"

      Kommentar


      • #4
        Danke und tschuldigung wenn ich euch genervt habe, der Witz ist ja, dass rein gar nichts ausgebgeben wird. Lasse ich aber die Schleife weg, wird nur ein Freund (der erste in der Tabelle) angezeigt.

        Kommentar


        • #5
          Zitat von Epic Beitrag anzeigen
          Danke und tschuldigung wenn ich euch genervt habe, der Witz ist ja, dass rein gar nichts ausgebgeben wird. Lasse ich aber die Schleife weg, wird nur ein Freund (der erste in der Tabelle) angezeigt.
          Ja das ist ja aber auch klar, denn mit mysql_fetch_row oder mysql_fetch_assoc ohne in einer Schleife ausgeführt zu werden, fetcht ja auch nur einen Datensatz und zwar den ersten den er in der Tabelle findet.

          Du solltest mal im Manual nach den Mysql Funktionen suchen und dich mal über Schleifen belesen. Mir scheint so, als wüsstest beim einen wie beim anderen nicht was da eigentlich vor sich geht.

          Um es an deinem Code noch mal deutlich zu machen.

          PHP-Code:
          $sql2="select you, friend, image from friends where you='$profil'";
          $result2=mysql_query($sql2);
          $row2=mysql_fetch_row($result2);
          $string "";
           while (
          $row2 = @mysql_fetch_assoc($result2)) {

              
          $string "<a href='?profil=$row2[1]'>$row2[1]</a>";
            } 
          // while Ende 
          Du fetchtst bei einem Query mit mysql_fetch_row, dass heißt das Script geht gar nicht mehr bis zu der While Schleife. Lass das mysql_fetch_row weg, wofür du das auch immer nutzen wolltest.

          Die Variable $string kannst du dir schenken, mache die Ausgaben in der Schleife selber.

          Du willst in der While Schleife Ausgaben haben die auf mysql_fetch_assoc fetchen, mysql_fetch_assoc gibt aber ein assoziatives Array zurück, dass heist die Array Elemente werden über einen String Indice angesprochen, du aber willst mit numersichen Indices drauf zugreifen, dass kann nicht funktionieren.

          Also belies die auch über Arrays und wie man in welchen Fall drauf zugreift.

          Gruß Litter
          Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
          [URL]http://www.lit-web.de[/URL]

          Kommentar

          Lädt...
          X