php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > SQL / Datenbanken
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


SQL / Datenbanken Probleme mit SQL? Hier könnt ihr eure Fragen zu SQL (MySQL, PostgreSQL, MS-SQL und andere ANSI-SQL Server) los werden.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 10-10-2010, 20:52
Vestron
 Registrierter Benutzer
Links : Onlinestatus : Vestron ist offline
Registriert seit: May 2008
Ort: Germany
Beiträge: 27
Vestron ist zur Zeit noch ein unbeschriebenes Blatt
Standard 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).
Mit Zitat antworten
  #2 (permalink)  
Alt 10-10-2010, 21:55
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Ich habe kaum ein Wort verstanden.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #3 (permalink)  
Alt 10-10-2010, 22:28
Vestron
 Registrierter Benutzer
Links : Onlinestatus : Vestron ist offline
Registriert seit: May 2008
Ort: Germany
Beiträge: 27
Vestron ist zur Zeit noch ein unbeschriebenes Blatt
Standard

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.

Geändert von Vestron (10-10-2010 um 22:39 Uhr)
Mit Zitat antworten
  #4 (permalink)  
Alt 11-10-2010, 07:59
eagle275
 Registrierter Benutzer
Links : Onlinestatus : eagle275 ist offline
Registriert seit: Jun 2010
Beiträge: 403
eagle275 befindet sich auf einem aufstrebenden Ast
Standard

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 ?
__________________

Wer LESEN kann, ist klar im Vorteil!
Mit Zitat antworten
  #5 (permalink)  
Alt 11-10-2010, 08:56
Vestron
 Registrierter Benutzer
Links : Onlinestatus : Vestron ist offline
Registriert seit: May 2008
Ort: Germany
Beiträge: 27
Vestron ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Zitat von eagle275 Beitrag anzeigen
kann ein user gleichzeitig in mehreren Klassen sein ?
ja
Mit Zitat antworten
  #6 (permalink)  
Alt 11-10-2010, 09:04
eagle275
 Registrierter Benutzer
Links : Onlinestatus : eagle275 ist offline
Registriert seit: Jun 2010
Beiträge: 403
eagle275 befindet sich auf einem aufstrebenden Ast
Standard

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
__________________

Wer LESEN kann, ist klar im Vorteil!
Mit Zitat antworten
  #7 (permalink)  
Alt 12-10-2010, 09:18
Vestron
 Registrierter Benutzer
Links : Onlinestatus : Vestron ist offline
Registriert seit: May 2008
Ort: Germany
Beiträge: 27
Vestron ist zur Zeit noch ein unbeschriebenes Blatt
Standard

danke für deinen Tip!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[gelöst] Group_concat Prob Vestron SQL / Datenbanken 6 08-10-2009 14:53
LEFT JOIN und GROUP_CONCAT strauberry SQL / Datenbanken 1 09-02-2006 10:27
GROUP_CONCAT zusammenfassen strauberry SQL / Datenbanken 2 09-02-2006 09:23
GROUP_CONCAT mit Int strauberry SQL / Datenbanken 0 02-02-2006 11:12
[MySQL 4.1] GROUP_CONCAT max len? prego SQL / Datenbanken 2 21-07-2005 14:16

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 22:31 Uhr.