我有以下html格式的复选框数组
<label><input name="columns[]" type="checkbox" value="pname" />Property Name</label>
<label><input name="columns[]" type="checkbox" value="2000" />Price</label>
<label><input name="columns[]" type="checkbox" value="New Road" />Location</label>
<label><input name="columns[]" type="checkbox" value="Joe Smith" />Owner</label>
大约有30个这样的复选框。
我想要做的就是在发布表单时发送文本及其复选框的值。让我们说如果我选中了第一个复选框,我想发送pname
以及文本Property Name
。可以有几种解决方案,但不知道哪一种更容易。
我认为的那个。在提交页面中迭代复选框数组的循环,创建另一个数组并手动将文本推送到此新数组。
或者我认为的其他选项是,在value属性中,我将发送带有像pname^Property Name
这样的值的文本,并在提交页面i迭代循环,爆炸值并将它们放到各自的数组中。
有没有替代解决方案呢?
由于
答案 0 :(得分:2)
<强> HTML 强>
<label><input name="columns['Property Name']" type="checkbox" value="pname" />Property Name</label>
<label><input name="columns['Price']" type="checkbox" value="2000" />Price</label>
<label><input name="columns['Location']" type="checkbox" value="New Road" />Location</label>
<label><input name="columns['Owner']" type="checkbox" value="Joe Smith" />Owner</label>
<强> PHP 强>
$columns = $_GET["columns"]; // or $_POST
echo $columns["Property Name"] ; // pname
echo $columns["Price"] ; // 2000
echo $columns["Location"] ; // New Orad
echo $columns["Owner"] ; // Joe Smith
答案 1 :(得分:1)
你可以这样使用
$posted_columns = implode(',',$_POST['columns']);
print_r($posted_columns);
但你的代码应该是这样的
<label><input name="columns['Property Name']" type="checkbox" value="pname" />Property Name</label>