Sortieren

Nolf

Grünschnabel
Hi
also ich möchte eine datei machen die eine ausgabe aus der mysql datenbank so sortiert das zb alles was mit a anfängt ausgegeben wird oder alles was ein B am anfang hat ect...

kann mir jemand sagen wie das geht ?

thx schonmal
 
Hi,

ich weiß nicht genau ob ich dich richtig verstanden habe,
aber ein "order by" in deiner Query würde hier doch reichen.

Ansonsten musst du die Seite mit einem Übergabewert aufrufen.
in etwa so : deineSeite.php?Buchstabe=a

Danach liest du Werte aus der Datenbank aus die, dem Wert entsprechen.



Gruß

Tex
 
hmm..
mit order by ? aber dann werden doch alle inhalte ausgegeben...
ich will aber das zum besipiel nur alle werten ausgegeben werden die zb mit A anfangen
 
habe neulich ein solches script geschrieben für einen fächer, der nur einen buchstaben pro seite hat... habs folgendermassen gelöst:

PHP:
foreach(range('a', 'z') as $letter) {
	if($id == $counter) {
	    echo " <a href='show.php?id=$counter'><b>$letter</b></a> ";
	    $casew = $letter;
	    }
	else {
		echo " <a href='show.php?id=$counter'>$letter</a> ";
		}
	$counter++;
	}

dieses script, gibt mal eine abc liste aus (hab ich in der "titelleiste") und verlinkt jeden buchstaben... ich habe jedem buchstaben eine zahl zugeordnet, wobei a=1, b=2, etc... $id ist der momentane buchstabe, resp. dessen zahl... wenn ich also gerade auf der b-seite bin, ist $id=2...
$casew ist der aktuelle buchstabe, bei b also b... :)

dann machst du mit
$startb = substr($spalte[1],0,1);
den ersten buchstaben des eintrags aus (zB. des titels oder was auch immer) und falls der dann gleich $casew ist, gibts du den datensatz aus... nach abc sortieren hilft in jedem fall und evtl. kann mans auch eleganter in einem SQL query lösen, aber mit PHP funzts so... wenn du hilfe brauchst, einfach Pm, ich schick dir dann mein script, vielleicht reicht dir aber die erklärung oben schon aus... :)

antihero
 
achso noch ne kleine frage... :)
wie mach ich es zb wenn ich alle werte mit ner zahl am anfag ausgeben möchte ? also alle werte mit einer 0-9 am anfang ? weiss das jemand ?
 
Würd ich erstmal so machen:
Code:
SELECT ... WHERE feldname LIKE '0%' OR feldname LIKE '1%' OR ...

Aber da wird es wahrscheinlich noch eine einfachere Lösung. ;)
 
Hi!

Das kannst du so machen...

WHERE (((Spaltenname) Like "[0-10]*")); //(ANSI-89)

oder...

WHERE (((Spaltenname) Like "[0-10]%")); //(ANSI-92)

Gruss Tom
 
Zuletzt bearbeitet:
Zurück