Webhilfe.info/board

Normale Version: Felder
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hi,
ich hab ein Auswahlfeldchen in meinem Newssystem eingebaut, wo man Newskategorien auswählen kann. (Genau wie hier wenn man im Editor die Schriftart auswählen will).
Mit welchem Codeschnipsel bekomme ich es jetzt hin, dass im Feld die einzelenn Kategorien Alphabetisch, und nicht durcheinander angeordnet werden? Das ganze Feld kommuniziert quasi mit der MYSQL, da die Kategorien per MYSQL eingegeben werden.

Wo/Wie bekomme ich nun eine alphabetische Anordnung in diesem Feld hin?



Vielen Dank im voraus!

lg,
take
Wie lautet deine SQL Abfrage? Dort musst du noch SORT BY ASC/DESC einfügen.

e-phy schrieb:
Wie lautet deine SQL Abfrage? Dort musst du noch SORT BY ASC/DESC einfügen.


Hey, bin absolut kein PHP/MYSQL freak Biggrin MYSQL Abfrage, wo muss ich das genau in der MYSQL eingeben, wenn ich die tabelle in der db ausgewählt habe?

thx im voraus

lg,
take

Mhh wenn du so ein Dropdownmenü eingebaut hast, solltest du wissen was eine sql-Abfrage ist Wink

naja, da ich den genauen Code nicht kenne, hier mal ein beispiel, die Kategorien für die News sind in der Tabelle kat, diese liest du aus und schreibst die in ein Droppdownmenü, z.B. so:

PHP-Code:
<?php
 
echo '<select name="kategorie">';

 
$sql mysql_query("SELECT kat_id,kat_name FROM news_kategorie");
 while(
$row mysql_fetch_object($sql))
 {
  echo 
'<option name="'.$row->kat_id.'">'.$row->kat_name.'</option>';
 };
 echo 
'</select>';
?>

So in etwa könnte es aussehen, jetzt muss du in deiner MYSQL-Abfrage, das ist die Zeile mit:

PHP-Code:
<?php
 $sql 
mysql_query("SELECT kat_id,kat_name FROM news_kategorie");
?>

am ende nur "ORDER BY kat_name" hinzuschreiben, das sieht dann so aus:

PHP-Code:
<?php
 $sql 
mysql_query("SELECT kat_id,kat_name FROM news_kategorie ORDER BY kat_name");
?>

Jetzt sortiert die Abfrage die Datensätze alphabetisch nach der spalte "kat_name" erweitern kannst du das ganze auch noch mit ASC / DESC dahinter, dann sortiert es auf- / absteigend.
ASC = Ascending = Aufsteigend
DESC = Descending = Absteigend

Aaachsoo ;D

Bei mir sieht das ganze so aus:

PHP-Code:
<select name="category" size="1" class="form" id="category">
<
option value="">----</option>
<?
php $sql7="SELECT catname FROM category";
$data7=mysql_query($sql7$db);
while (
$cat mysql_fetch_object ($data7)) {
print 
"<option value=\"$cat->catname\">$cat->catname</option>"; } ?>
</select> 


Wenn ich aber hinter "SELECT catname FROM categorie" - > ORDER BY categorie eingebe(Name der Spalte), funktioniert das nicht wirklich oO ?!?

Takedown schrieb:
Wenn ich aber hinter "SELECT catname FROM categorie" - > ORDER BY categorie eingebe(Name der Spalte), funktioniert das nicht wirklich oO ?!?


Da kommt ja auch nicht der Tabellenname hin, sondern der Spaltenname, bei dir heißt der catname, categorie ist ja die Tabelle. Fertig müsste die Zeile dann so aussehen:

PHP-Code:
$sql7 "SELECT catname FROM category ORDER BY catname"


Wenn du es so schreibst, sind die automatisch aufsteigend geordnet, also ASC braucht man dort nicht dazuschreiben!

Referenz-URLs