| MySQL nach Rubrik ordnen | 
	
Diamo
 Feiertags-Poster Threadstarter
  
 
 
 
 Beiträge: 38  | 
 
Hallo zusammen, 
 
ich hab ein Script programmiert, dass ein Formular auswertet und Daten in eine MySQL Tabelle mit den Datensätzen 'name', 'url', 'kat' und 'datum' einschreibt. 
Jetzt möchte ich aber, dass beim anzeigen der Tabelle die Datensätze nach der Kategorie angezeigt werden. Also, dass z.B. nur die Datensätze mit der Kategorie Lehrbuch angezeigt wird und die restlich Datensätzen mit anderen Kategorien nicht. 
Außerdem sollte der Anwender noch die Möglichkeit haben, per Auswahl zwischen den Kategorien wechseln zu können. 
 
Könnt ihr mir das weiterhelfen ? 
 
best greets 
willy 
  | 
|   Profil
  E-Mail
  Website
  Editieren
  Zitieren
 | 
einstein
 Quasselstrippe 
 
 
 
 Beiträge: 241  | 
 
Du scheinst vor keinem unlösbaren Problem zu stehen, daher empfehle ich den Blick in das ein oder andere Tutorial. 
Mysql/PHP Grundlagen gibts z.B. hier:
 http://php-center.de/tutorial/teil4.htm
  | 
|   Profil
  Editieren
  Zitieren
 | 
Diamo
 Feiertags-Poster Threadstarter
  
 
 
 
 Beiträge: 38  | 
 
OK danke, habs hinbekommen. Wusste nicht wo ich sowas nachschauen kann... 
 
Ist es vielleicht auch möglich die Rubrik per Menü(link) zu ändern ? 
 
  | 
|   Profil
  E-Mail
  Website
  Editieren
  Zitieren
 | 
Der_HOmer[DE]
 Quasselstrippe 
 
 
 
 Beiträge: 239  | 
 
meinst du so?: 
Link:  kjh
PHP: mysql_query("SELECT * FROM tabelle ORDER by $_GET['ordnen']") 
  | 
|   Profil
  Editieren
  Zitieren
 | 
Diamo
 Feiertags-Poster Threadstarter
  
 
 
 
 Beiträge: 38  | 
 
Ich habs so probiert, aber dann kommt dieser Fehler: 
Warning: Supplied argument is not a valid MySQL result resource in /www/htdocs/v026937/adult/index.php on line 19 
Hier mein Code:
 1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
20: 
21: 
22: 
23: 
24: 
25: 
26: 
27: 
28: 
29: 
30: 
31: 
32: 
33: 
34: 
35:  | $anz_reihen Mitglieder im Clan";
?>
Kategorie 1 
Kategorie 2 
Kategorie 3 
  
 |  
 
  | 
|   Profil
  E-Mail
  Website
  Editieren
  Zitieren
 | 
einstein
 Quasselstrippe 
 
 
 
 Beiträge: 241  | 
 
in Zeile 10 fehlt am Ende ein Semikolon, aber das würde einen Parse Error verursachen. 
Füge unter die mysql_query() ein 
  ein. Das sollte dir beim Debuggen helfen.
 
  | 
|   Profil
  Editieren
  Zitieren
 | 
Diamo
 Feiertags-Poster Threadstarter
  
 
 
 
 Beiträge: 38  | 
 
Dann kommt dieser Fehler: 
1:  | You have an error in your SQL syntax near '' at line 1  |  
 
  | 
|   Profil
  E-Mail
  Website
  Editieren
  Zitieren
 | 
languitar
 Foren-Team 
 
 
 
 Beiträge: 2795  | 
 
1:  | $ergebnis = mysql_query( "Select * From linklist WHERE kat='".$_GET["category"]."'")  |  
  
Sollte wohl eher so aussehen:
 1:  | $ergebnis = mysql_query("SELECT * FROM `linkliste` WHERE kat = '".$_GET['category']."') |  
  
Zum einen solle man MySQL-Befehle immer groß schreiben und zum anderen musst du auf die art der Anführungszeichen achten: 
' = Umschalt + # wird für Werte verwendet 
` = Umschalt + ´ udn anschließend eine Leertaste wird für Tabellen- und Feldnamen verwendet.  
 Diese Nachricht wurde geändert von: languitar  | 
|   Profil
  Editieren
  Zitieren
 | 
Diamo
 Feiertags-Poster Threadstarter
  
 
 
 
 Beiträge: 38  | 
 
In deiner Zeile war zwar auch ein kleiner Fehler(Anführungszeichen hat am ende im query gefehlt), aber jetzt funktionierts ! Super ! DAAANKKEEE 
  | 
|   Profil
  E-Mail
  Website
  Editieren
  Zitieren
 | 
Diamo
 Feiertags-Poster Threadstarter
  
 
 
 
 Beiträge: 38  | 
 
Ich hab noch ne zusätzliche Frage: 
 
Ist es vielleicht möglich die Tabelle so zu ordnen, dass nur die Einträge angezeigt werden, die nicht älter als x Tage sind ? 
  | 
|   Profil
  E-Mail
  Website
  Editieren
  Zitieren
 | 
languitar
 Foren-Team 
 
 
 
 Beiträge: 2795  | 
 
füge noch ne WHERE-Bedingung hinten an, also: 
	
1:  | $ergebnis = mysql_query("SELECT * FROM `linkliste` WHERE kat = '".$_GET['category'].' AND date > '".(time()-6*24*3600)."'") |  
 
Hier werden nur Einträge angezeigt, die jünger als sechs Tage sind. 
Setzt voraus, dass das Datum als Timestamp gespeichert ist... 
  | 
|   Profil
  Editieren
  Zitieren
 | 
Diamo
 Feiertags-Poster Threadstarter
  
 
 
 
 Beiträge: 38  | 
 
cool danke, hat funktioniert ! 
  | 
|   Profil
  E-Mail
  Website
  Editieren
  Zitieren
 | 
Diamo
 Feiertags-Poster Threadstarter
  
 
 
 
 Beiträge: 38  | 
 
wieso funktioniert es eigentlich so net ? Ich wollte, dass er alle neuen einträge in der datenbank anzeigt 
1:  | $ergebnis = mysql_query("SELECT * FROM `linklist` WHERE date > '".(time()-6*24*3600)."'"); |  
 
  | 
|   Profil
  E-Mail
  Website
  Editieren
  Zitieren
 | 
languitar
 Foren-Team 
 
 
 
 Beiträge: 2795  | 
 
Sollte eigentlich funktionieren. Zumindest sehe ich keinen Fehler. 
  | 
|   Profil
  Editieren
  Zitieren
 |