Avatar billede mjense173 Nybegynder
31. januar 2006 - 20:53 Der er 9 kommentarer og
1 løsning

Values fra SELECT boks

Se følgende:

http://www.aarhusit.dk/attention8/list/cms_listboks.php

Når der klikkes på 'Gem', skal den udskrive en liste med rækkefølgen af values i SELECT boksen.

Hvordan gør man det?
Avatar billede mjense173 Nybegynder
31. januar 2006 - 20:54 #1
Er array eller lign. ("1","3","2","4") eks.
Avatar billede nielle Nybegynder
31. januar 2006 - 21:35 #2
Hvis du indsætter [] i navnet på select'en:

<select size=7 name="list2[]">

- så kan du bagefter få værdierne ud vha. en løkke:

foreach ($_POST["list2"] as $value)
{
    echo $value . "<br>";
}
Avatar billede mjense173 Nybegynder
31. januar 2006 - 23:54 #3
Det har du helt ret i, hvis alle værdierne er 'selected'. (som multiple)
Men er det virkelig nødvendigt at markere dem alle, for at få dem sendt afsted?
Kan den ikke bare se hvilke der er i listen og så printe dem ud?
Avatar billede olebole Juniormester
01. februar 2006 - 00:47 #4
<ole>

Hvad nielle viser dig er, hvad du kan gøre  :)

/mvh
</bole>
Avatar billede puddelundercover Nybegynder
01. februar 2006 - 12:43 #5
Han vil have alle værdier ud, selvom de ikke er selected; Jeg ved ikke om der er en eller anden smart udvej, men i værste fald må du lave et javascript som på formens onSubmit selecter alle værdierne inden formen sendes...
Avatar billede puddelundercover Nybegynder
01. februar 2006 - 12:48 #6
Avatar billede nielle Nybegynder
01. februar 2006 - 17:50 #7
En select sender kun oplysninger af sted om de option's som er selected. Denne adfærd kan du ikke ændre ved.

Du må derfor gøre noget helt andet, hvis du ønsker at have oplysningerne om samtlige option's, som er tilgængelige i select'en

1) Enten ved det modtagende PHP-script, hvilke muligheder der er:

Hvis du selv har hårdkodet option'sene i formen, så må du ligeledes hårdkode dem i det modtagende PHP-script.

Hvis du ikke har hårdkodet dem, men f.eks. har popoleret din select med option's som du runtime har trukket ud fra en database, ja så må du udtrække dem en gang til på samme måde i det modtagende PHP-script.

2) Eller den afsendende form, kan sende ekstra oplysninger med om hvilke options der er. Men dette kræve ekstra kode.

Det kan f.eks. gøres i form af et hidden-felt:

<select size=7 name="list2[]">
    <option value="1">En</option>
    <option value="2">To</option>
    <option value="3">Tre</option>
    <option value="4">Fire</option>
    <option value="5">Fem</option>
    <option value="6">Seks</option>
</select>
<input type="hidden" name="list2All" value="1,2,3,4,5,6">

Det modtagende script kan derefter bestemme alle mulighederne ved at explode værdien fra  list2All:

$list2All = explode(",", $_POST["list2All"]);
foreach ($list2All as $value)
{
    echo $value . "<br>";
}
Avatar billede mjense173 Nybegynder
02. februar 2006 - 02:20 #8
Tak for det lange og uddybende svar nielle!
Jeg har implementeret den metode du foreslår og har fået følgende resultat:

http://www.aarhusit.dk/diverse/select_multiple.php

Når man klikker på [opdater] bliver alle værdier sendt afsted.
Avatar billede mjense173 Nybegynder
02. februar 2006 - 02:26 #9
Så du må gerne ligge et svar.

Jeg har problemer med at de punkter der er blevet flyttet rundt, ikke bliver afsendt med values. Dette er noget javascript bøvl, som jeg har flyttet til dette spørgsmål:
http://www.eksperten.dk/spm/684700
Avatar billede nielle Nybegynder
02. februar 2006 - 07:06 #10
Svar :^)
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

Seneste spørgsmål Seneste aktivitet
I går 21:00 Libre Office Impress Af Frank i Andre styresystemer
I går 11:47 VB script Af Jenshentze i Word
I går 11:21 Popup ved opstart Af mort1 i Windows
04/0918:50 Slet lokal konto Af ErikHg i Windows
04/0916:05 Ændre tal i en celle Af xvid i Excel