Just nu i M3-nätverket
Jump to content

Varför fungerar inte checkbox över POST?


Shaft

Recommended Posts

Hej!

 

Av någon outgrundlig anledning så får jag inte rätt på checkbox över POST. Jag får bara tillgång till den sist ikryssade checkboxen av fyra.

 

Får följande output:

 

POST: Array ( [namn] => 3 [submit] => Submit Query )

 

Här är koden:

 

# formuläret

 

<form action="formtest.php" enctype="application/x-www-form-urlencoded" method="post">

<input name="namn" type="checkbox" value="1" />

<input name="namn" type="checkbox" value="2" />

<input name="namn" type="checkbox" value="3" />

<input name="namn" type="checkbox" value="4" />

<input name="submit" type="submit" />

</form>

 

# formtest.php

 

<?php

print "POST: "; print_r($_POST);

?>

 

/S

 

Link to comment
Share on other sites

Pontus östlund

<form action="formtest.php" enctype="application/x-www-form-urlencoded" method="post">
<input name="namn[]" type="checkbox" value="1" />
<input name="namn[]" type="checkbox" value="2" />
<input name="namn[]" type="checkbox" value="3" />
<input name="namn[]" type="checkbox" value="4" />
<input name="submit" type="submit" />
</form>

 

Observera klammrarna som gör "namn" till en array.

 

# ==============================extra===

# Nordens största F l a s h community

# www.communen.com | poppa@communen.com

 

Link to comment
Share on other sites

TACK! Som jag har letat. Har slösat bort flera timmar på det här. Jag såg ju att variablerna fanns i URL när jag körde get istället post.

 

Stort tack!

 

 

 

Link to comment
Share on other sites

Allting är mycket lättare när man vet vad man letar efter. Det fungerar fin, fint efter att jag justerat javscripten. Notera dock följande (från http://www.php.net/manual/en/language.variables.external.php):

 

1. "Note that using [] in a name attribute is not valid in HTML 4.01.

 

<http://www.w3.org/TR/html4/types.html#type-cdata>"

 

När används name respektive id? Båda kom med HTML 4.0. Men name är deprecated i XHTML 1.0.

 

2. "Javascript will not recognize this name. To refer to the object, use the following construct in Javascript (this example unchecks the box with index i):

box=document.FormName.elements['varname[]'];

box.checked=false;"

 

Det känns om att det är oundvikligt att bryta mot HTML-standard med name[] om man vill få name till att vata en array av värden i php.

 

Kommentar någon?

 

Link to comment
Share on other sites

Du har missuppfattat specifikationerna. "name" finns fortfarande kvar för input, select, osv, men har tagits bort för form, a, m.fl.

 

id används för att referera till ett element på en sida med DOM, medan name används för att skicka information med GET eller POST.

 

För att lösa problemet med namn[], läs följande:

//eforum.idg.se/viewmsg.asp?EntriesId=355757#355788

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...