Avatar billede willyrap Nybegynder
11. juli 2003 - 01:43 Der er 9 kommentarer og
1 løsning

Arrays i en formular

Hej eksperter...

Jeg har et problem med at behandle et array i en formular. Jeg gør følgende:


<FORM name="form" action="fil.php">
<INPUT name="img[0]" type="hidden">
<INPUT name="img[1]" type="hidden">
<INPUT name="img[2]" type="hidden">
</FORM>

<SCRIPT>
document.form.img[1].value = "ost.jpg";
</SCRIPT>


Det er der hvor jeg vil sætte indeks 1 til at være lig "ost.jpg" at det går galt. Er det bare mig som er dum, eller er der nogen som ved hvad jeg skal gøre?
Avatar billede roenving Novice
11. juli 2003 - 01:46 #1
Hvad går galt ?-)
Avatar billede roenving Novice
11. juli 2003 - 01:48 #2
-- og hvorfor har du brug for et array ?-)
Avatar billede roenving Novice
11. juli 2003 - 01:50 #3
Prøv sådan (til test har jeg gjort dem synlige !-):

<HTML>
<BODY>
<FORM name="form" action="fil.php">
<INPUT name="img" type="text">
<INPUT name="img" type="text">
<INPUT name="img" type="text">
</FORM>

<SCRIPT>
document.form.img[1].value = "ost.jpg";
</SCRIPT>

</body>
</HTML>
Avatar billede willyrap Nybegynder
11. juli 2003 - 17:03 #4
Hej!

Problemet bestod i at jeg gav et indeks til hvert array-element ved oprettelsen. (0-2)
-Det må man åbenbart ikke. Men hvad gør man så hvis man ikke vil have dem til at komme i kronologisk rækkefølge?

Grunden til at jeg bruger array er naturligvis at jeg har flere forskellige billeder's navne som skal sendes til serveren...
Avatar billede willyrap Nybegynder
11. juli 2003 - 17:05 #5
Jeg får følgende fejlbesked i IE, når jeg bruger den metode som jeg startede med at nævne:

Fejl: 'document.form.img' er null eller ikke et objekt
Avatar billede klejner Nybegynder
11. juli 2003 - 20:13 #6
Det ser ud til at php scriptet ikke vil være med til det hvis jeg ikke giver dem et indeks ved oprettelsen.
Det vil sige at på den ene måde virker javascriptet men ikke php, og på den anden måde virker phpen, men ikke javascriptet...

nogle gode ideer?
Avatar billede roenving Novice
11. juli 2003 - 22:19 #7
I javascript ville man kunne udnytte, at man sagtens kan få fat i værdier med 'langsom' indeksering:

obj = eval('document.form.img'+i);
obj.value="ost.jpg"

Hvad det giver af problemer i php har jeg slet ikke noget overblik over ...

Håber det giver ideer klejner/willyrap ...
Avatar billede willyrap Nybegynder
12. juli 2003 - 13:19 #8
Problemet med det er bare at det ikke kommer som et array i php. Men jeg har fundet en løsning selv...

<input name="img[0]" id="idimg0" type="hidden">
<input name="img[1]" id="idimg1" type="hidden">

På den måde kan man bruge
document.getElementById("idimg0").value = "ost.jpg";

Jeg ved bare ikke hvor holdbar den er, men tak for hjælpen. Vil du ikke have points?
Avatar billede roenving Novice
12. juli 2003 - 13:27 #9
Jo tak, gerne '-)
Avatar billede roenving Novice
13. juli 2003 - 01:08 #10
-- og tak for points ;~}
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