phpbar.de logo

Mailinglisten-Archive

[php] =?iso-8859-1?Q?AW=3A_=5Bphp=5D_mehrfache_Eintr=E4ge_in_einem_a?= =?iso-8859-1?Q?us_DB_gef=FClltem_select-feld?=

[php] AW: [php] mehrfache Einträge in einem a us DB gefülltem select-feld

Gloss Mathias php_(at)_phpcenter.de
Tue, 5 Jun 2001 16:42:34 +0200


Aloha,

> ----------
> Von: 	Frank Schnaue[SMTP:fschnaue_(at)_gmx.de]
> 
> Hallo, 
> ich möchte Hilfe erbitten für folgendes Problem: 
> Aus einer Musik-DB werden über eine Schleife alle Interpreten in =
ein
> select-feld ausgelesen, über welches dann der entsprechende Eintrag
> ausgelesen
> werden kann. 
> Da mehrere Interpreten vorhanden sind, kommen Einträge teilweise =
doppelt
> vor. 
> Ich möchte, daß im select-feld dann folgendes steht: 
> Tom Waits 
> Van Morrison (4) 
> Deep Purple (2) 
> 
ich nehme mal an, daß die Zahl in der Klammer die Anzahl
der Einträge in der DB darstellen soll ....

> etc. 
> 
> Hier das Codefragment: 
> // BODY-Formatierung 
> include("./inc.body.php3"); 
> // Datenbank-Verbindung aufbauen 
> include("./inc.pconnect.php3"); 
> connect(); 
> // Zuerst die gesamte Anzahl der Datensätze in der Datenbank finden =

> $sql = "SELECT * FROM $DB_TABLE"; 
> $sql .= " ORDER BY artist,date_id"; 
> $sql .= ";"; 
> 
ersetze die 3 Zeilen durch:
$sql = "select artist, count(artist) from $DB_TABLE order by
artist,date_id;";

> // Die SQL-Anweisung ausführen 
> $sql_result = mysql_db_query( $DB_DATABASE, $sql, $dbh ) or =
mysql_die(); 
> 
> // mit einer Schleife die select-box aus der Datenbank füllen 
$selected = ' selected';
> while ($row = mysql_fetch_array($sql_result)) { 
ab hier streichen bis
> $r_artist = $row[$data_field]; 
> $r_first = "ABBA"; 
> if ($r_first == r_artist) 
> { $option_block .= "<OPTION VALUE=\"$r_artist\"
> SELECTED>$r_artist</OPTION>"; 
> } 
> else{ 
> $option_block .= "<OPTION =
VALUE=\"$r_artist\">$r_artist</OPTION>"; 
> } 
hier ...
und dann 
$option_block .= '<option value="' . $row[0] . $selected .'">'.$row[0] .'('
                     . $row[1] . ")\n";
$selected = '';

> } 
> 
> 
Der Trick mit dem $selected macht das etwas übersichtlicher, damit
wird das erste Ergebnis vorbelegt, alle andern nicht mehr.

Viele Grüße, Mathias




php::bar PHP Wiki   -   Listenarchive