Group_Concat - links Problem

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

  • Group_Concat - links Problem

    hallo Gemeinde!

    $query=mysql_query("SELECT *,
    GROUP_CONCAT(class SEPARATOR ', ') AS classes
    FROM users
    LEFT JOIN user_class ON uc_uid=$id
    WHERE uid=$id
    GROUP BY uid");

    Angenommen $classes gibt id While-Schleife folgendes aus:
    novis, semi, profi

    wie muß ich einen html-link programmieren, so daß i jede Klasse "einzeln" anklicken kann, um so die user nach "Klasse" zu sortieren?
    (geht bei group_concat leider nicht direkt, da alles als Gruppe ausgegegeben wird).

  • #2
    Ich habe kaum ein Wort verstanden.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      ok .. nochmal ausführlicher

      Abfrage:
      $query=mysql_query("SELECT *,GROUP_CONCAT(class SEPARATOR ', ') AS classes
      FROM users LEFT JOIN user_class ON uc_uid=$id
      WHERE uid=$id GROUP BY uid");

      Ausgabe:
      while($row = mysql_fetch_assoc($query)){
      echo''.$row['classes'].'';}

      mal angenommen ich erhalte folgendes:
      novis, semi, profi

      würde gern nun einen link anbringen (id while-Schleife), um so zB user nach
      Klassen sortieren zu können, also nach novis oder semi oder profi.

      while($row = mysql_fetch_assoc($query)){
      echo'<a href="?page=user&class='.$str.'">'.$row['classes'].'</a>';}

      führt aber zu keinem Ergebnis, da group_concat die Ausgabe "gruppiert" ausgibt.
      Zuletzt geändert von Vestron; 10.10.2010, 22:39.

      Kommentar


      • #4
        ja dann musst du wohl das Ergebnis mit explode anhand des Komma wieder trennen ..

        oder du lässt den Müll mit group_Concat und nutzt nur Group By

        ich würd den 2ten Weg bevorzugen .. warum erst zusammenfügen und nun wieder trennen ?

        durch dein While gehst du doch sowieso durch die Ergebnisse durch .. kann ein user gleichzeitig in mehreren Klassen sein ?
        [font=Verdana]
        Wer LESEN kann, ist klar im Vorteil!
        [/font]

        Kommentar


        • #5
          Zitat von eagle275 Beitrag anzeigen
          kann ein user gleichzeitig in mehreren Klassen sein ?
          ja

          Kommentar


          • #6
            dann schneide den Rückgabewert der Datenbank mit explode in Häppchen,

            dann erzeugst du jeweils 1 Link aus einem dieser Happen ...
            PHP-Code:
            $klassen=explode(",",$row['classes']);
            for(
            $i=0;$i<count($klassen);$i++) {
              echo 
            '<a href="?page=user&class='.$klassen[$i].'" >'.$klassen[$i].'</a>';

            so in etwa könnte das aussehen
            [font=Verdana]
            Wer LESEN kann, ist klar im Vorteil!
            [/font]

            Kommentar


            • #7
              danke für deinen Tip!

              Kommentar

              Lädt...
              X