Autor | Zpráva | ||
---|---|---|---|
Daemonic Profil |
Dobrý den, chtěl bych se zeptat na jednu věc, mám na stránkách formulář a v něm tag <select name="neco> s 12 položkami <option> pro výběr , přičemž lze vybrat i více položek. Po odeslání formuláře se v příslušném PHP skriptu vytvoří proměnná superglobální pole $_POST[neco], kterou nahraju ve skriptu do proměnné $neco, jejíž obsah pro kontrolu vypíšu pomocí příkazu echo $neco.
Jenže proměnná $_POST[neco] obsahuje vždy jen jednu položku výběru ze <select> a to i když označím více položek. Konkrétně obsahuje vždy tu poslední označenou, takže je jasný že se přepisuje. Nevíte někdo co s tim? Předem díky za rady. |
||
Majkl578 Profil |
#2 · Zasláno: 15. 8. 2009, 20:32:34
o multiselectu jsi neslyšel? (atribut multiple)
|
||
Alphard Profil |
#3 · Zasláno: 15. 8. 2009, 20:34:41
<?php if (isset ($_POST['os'])) { print_r ($_POST['os']); } ?> <form method="post"> <select name="os[]" size="3" multiple> <option value="win">Windows <option value="linux" selected>Linux <option value="unix">Unix <option value="mac">Mac </select> <input type="submit"> </form> |
||
Daemonic Profil |
#4 · Zasláno: 15. 8. 2009, 20:39:48
no multiple tam samozřejmě nastavenej mám, to by mě nešlo označit víc věcí ,jde o to, že se do globálního pole načte jen ta poslední označená. Jdu vyzkoušet to řešení od Alphard
|
||
DoubleThink Profil * |
#5 · Zasláno: 15. 8. 2009, 20:41:48
„o multiselectu jsi neslyšel? (atribut multiple)“
Počítám, že slyšel - bez tohoto atributu v selectu víc položek vybrat nejde. Ptá se, jak to udělat, aby se proměnné requestu přeložily do superglobálních polí všechny. Dělá se to tak, jak ukázal Alphard, jako název selectu použiješ pole[]. |
||
Daemonic Profil |
#6 · Zasláno: 15. 8. 2009, 20:50:59
to alphard: díky už to funguje :-)
|
||
Časová prodleva: 15 let
|
0