Monday, May 20, 2024
 Popular · Latest · Hot · Upcoming
6
rated 0 times [  9] [ 3]  / answers: 1 / hits: 20083  / 11 Years ago, sun, march 3, 2013, 12:00:00

I have a select multiple list that has a few items in it. It is a list of IP addresses for an ACL. People can add/remove IPs, and then save the list. However, unless you select an item on the list, $_POST[selectName] does not contain any values. How can I accomplish this? I know I can do this with javascript but I would rather stick to PHP.


More From » php

 Answers
28

Edit/corrected: You need JS. There is no way to send all (selected and not selected) options via POST. You have to programatically select all options before submission.



File with form (file1.php):



<script type=text/javascript>
function selectAll()
{
selectBox = document.getElementById(someId);

for (var i = 0; i < selectBox.options.length; i++)
{
selectBox.options[i].selected = true;
}
}
</script>

<form method=post action=file2.php>
<select id=someId name=selectName[] multiple>
<option value=123.123.123.123>123.123.123.123</option>
<option value=234.234.234.234>234.234.234.234</option>
</select>
<input type=submit name=submit value=Submit onclick=selectAll();>
</form>


File that receives POST (file2.php):



<?php
foreach ($_POST['selectName'] as $item)
{
print $item<br/>;
}
?>

[#79872] Friday, March 1, 2013, 11 Years  [reply] [flag answer]
Only authorized users can answer the question. Please sign in first, or register a free account.
lailab

Total Points: 706
Total Questions: 102
Total Answers: 95

Location: Falkland Islands
Member since Mon, Jul 13, 2020
4 Years ago
;