phpbar.de logo

Mailinglisten-Archive

[php] SELECT mit multiple

[php] SELECT mit multiple

Olaf Gleba php_(at)_phpcenter.de
Sun, 13 Oct 2002 03:27:47 +0200


Am 13.10.2002 2:31 Uhr schrieb "Joern Grube" unter <jg_(at)_jg-multimedia.de>:

Hallo Joern,
> so ganz langsam krieg ich hier die Krise <s>.
> Folgendes Problem:
> Ich habe in einem Formular ein SELECT-Feld
> <select name="bundesland[]" size="5" multiple="multiple" class="klein">
>         <option value="1">Baden-W&uuml;rtemberg</option>
>         <option value="2">Bayern</option>
>         <option value="3">Berlin</option>
>         .
>        <option value="15">Schleswig-Holstein</option>
>        <option value="16">Th&uuml;ringen</option>
> </select>

> [...] Und in der Datenbank (zweig_bundesland
> set('1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16')
> default NULL,) kommt absolut gar nichts an.
> Bitte, wie kriege ich dieses daemliche Array korrekt und vollstaendig in
> die Datenbank???

Du must das Array, das du durch das Selectfeld ("bundesland[]") bildest per
Funktion "implode" in die DB schreiben. Das ":" ist hierbei das Trennzeichen
(kann beliebig bewählt werden) was dann in deinem Fall in der DB so aussehen
würde: 1:2:3:4 etc.)

Ausgabeseitig kannst/musst du das Array dann wieder mit "explode"
aufsplitten anhand genau diesem gewählten Trennzeichens um dann das Array
mit irgendeiner Schleife auslesen.

<code>
/*Dein Formular (hier PHP, tut sich aber nichts mit der HTML Version... */
echo "<SELECT NAME='Techniker[]' size='6' class='form' multiple>\n";
$result=mysql_query("select * from lhtechniker");
while ($row = mysql_fetch_array($result)){
$idtech=$row["ID"];
echo "<option value='$idtech'>".$row['Name']."</option>\n";
}
 echo "</SELECT>";

/* Die DB Query */
mysql_query("insert into $tabelle (Techniker)
values('".implode(":",$Techniker)."')");


/* Ausgabeseitig... */
$arr = explode(":",$Techniker);
if (is_array($arr)) {
foreach ($arr as $v)
...
etc. etc.
}
etc. etc.

</code>

gruss
olaf

P.S Da du im deinem Beispiel in der Query was von "set" stehen hast,- beim
update der DB verhält sich das ganze natürlch analog zum insert...

--
Olaf Gleba | creatics media&systems
http://www.creatics.de | mailto:og_(at)_creatics.de


php::bar PHP Wiki   -   Listenarchive