18. november 2003 - 19:38Der er
11 kommentarer og 1 løsning
Overføre flere værdier fra SELECT - Multiple
Hej.
Jeg står og roder med en <select multiple>. Men så kom jeg til at tænke på, hvordan søren jeg får overført alle værdierne fra denne "boks". For jeg skal jo give mine brugere mulighed for, at foretage flere valg.
Hvis hver eneste <option> skal have et navn, så skal jeg jo kende indholdet af selecten - men det gør jeg ikke nødvendigvis, da denne genereres ud fra indholdet i en database.
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
din select skal have et navn. og det er det eneste navn (hvis du prøver at navngive dine options går det grueligt galt.)
php anbefaler at du bruger et 'ikke rigtig lovligt' navn der ender med [] fx: <select name="minsel[]" ...> når så php prøver at lægge form-værdierne i $_POST arrayet bliver de forskellige værdier for din select til et array med navnet $minsel Det er ikke kønt, og det gør det klumset at adressere den select i javascript (hvor '[' og ']' også har specialbetydning)
Så jeg foretrækker a bruge nedenstående, hvor din select blot skal have et helt almindeligt (lovligt) navn:
sørg før at nedenstående linie står i din php.ini: always_populate_raw_post_data = 1
så bliver formdata lagt i $GLOBALS['HTTP_RAW_POST_DATA'] og du kan hente dem derfra.
som navnet antyder er det de "RÅ" data. du kan hente dem med en funktion i retning af:
du adresserer dem med numre som i et normalt array altså <select name="ladVereMedAtBrugeSadanNogenNavne[]" multiple="multiple"> <option value="nr 0">text 0</option> <option value="nr 1">text 1</option> <option value="nr 2">text 2</option> <option value="anna">text 3</option> </select> første og sidste option er valgt idet der submittes. så vil: $_POST["ladVereMedAtBrugeSadanNogenNavne"][0] indeholde "nr 0" og: $_POST["ladVereMedAtBrugeSadanNogenNavne"][1] indeholde "anna"
( som du nok kan gætte synes jeg ikke meget om det valg :-)
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.