You are not logged in.

  • Login

1

Friday, March 4th 2011, 11:25am

Ausgabe alphabetisch sortieren

Hallo,

ich habe 2 Variablen $userName1 und $companyName1 die in eine in einer whilfe Schleife die vorhanden Daten ausgeben. Die Auflistung erfolgt in einem dropDown Menu.

Wie kann ich nun die Auflistung alphabetisch sortieren.

MfG camiyo

PHP Quellcode

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
// Auswahlmenu Empfänger
	function receiver() {
 
	echo "<select name='receiver'>";
	$res = mysql_query( "SELECT accountID, userID, companyID FROM bank_accounts" );
	$num = mysql_num_rows($res);
 
	if($num = 0) {
 
	}
 
	while($row = mysql_fetch_assoc($res)) {
 
	$companyInfo1 = mysql_query( "SELECT companyName FROM company WHERE companyID='$row[companyID]' ORDER BY companyName ASC" );
	$row1 = mysql_fetch_row($companyInfo1);
	$companyInfoResult = mysql_num_rows($companyInfo1);
	$companyName1 = $row1[0];
 
	$userInfo1 = mysql_query( "SELECT userName FROM user_info WHERE userID='$row[userID]' ORDER BY userName ASC" );
	$row2 = mysql_fetch_row($userInfo1);
	$userInfoResult = mysql_num_rows($userInfo1);
	$userName1 = $row2[0];
 
	if ($companyInfoResult > 0) { echo "<option value='$row[accountID]'>$companyName1</option>"; }
	elseif ($userInfoResult > 0) { echo "<option value='$row[accountID]'>$userName1</option>"; }
 
	}
 
	echo "</select>";
 
	}

2

Friday, March 4th 2011, 11:45am

Du kannst sie dir sortiert ausgeben lassen von MySQL

hinter der Selectanfrage: ORDER BY `tabelle`.`Spalte` ASC


das ASC steht für die Reihenfolge.

Ich hoffe ich konnte Dir weiterhelfen, wenn nicht, dann schreibe ich es ausführlicher

Ups hast Du ja gemacht. Dann verstehe ich deine Frage leider nicht :(

3

Friday, March 4th 2011, 1:11pm

Ups hast Du ja gemacht. Dann verstehe ich deine Frage leider nicht

Nicht ganz, hier wird nicht sortiert :

$res = mysql_query( "SELECT accountID, userID, companyID FROM bank_accounts" )


Hier steckt auch noch ein Fehler, der momentan keine Auswirkung hat, da du ihn nicht nutzt, dir aber immer einen Result von 0 anzeigt ;)

PHP Quellcode

1
2
3
if($num = 0) {
 
	}

4

Friday, March 4th 2011, 1:22pm

da werden aber nur die IDs ausgegeben. Ihh möchte ja das die Namen sortiert werden.

5

Friday, March 4th 2011, 1:42pm

da werden aber nur die IDs ausgegeben. Ihh möchte ja das die Namen sortiert werden.


Aber das ist dein Ausgangsquery, dessen Ergebnis du auch iterierst, also musst du diesen dann auch sortieren.

PHP Quellcode

1
while($row = mysql_fetch_assoc($res)) {



SQL Code

1
SELECT accountID, userID, companyID FROM bank_accounts LEFT JOIN company ON company.id = bank_accounts.companyID ORDER BY companyName ASC


Ob der Join so richtig ist, kann ich dir nicht sagen, ich kenne deine DB nicht, aber der Ansatz ist ja verständlich.

6

Friday, March 4th 2011, 1:48pm

Oder speichere alternativ die Ergebnisse in einem Array zwischen, sortiere dieses Array dann passend und gib dann die div. Option-Felder in einer Schleife aus.

http://at2.php.net/manual/en/array.sorting.php

Similar threads

Social bookmarks