为什么我不能将此数组提交给 PHP?
Why I cant submit this array to PHP?
我有一个 table,其中包含数据和复选框。当我单击复选框时,我会获取每个选定项目的 ID,当提交时,我会在 PHP 中收到,但现在我改变了我的方法。现在,我想将整个数组提交给 PHP 但是我没有收到它:
<?php foreach ($arr_cases as $cases) : ?>
<tr>
<td>
<input type="checkbox" name="devices" value="<?php $dataa = serialize($cases); $encodedd = htmlentities($dataa); echo $encodedd; ?>">
</td>
</tr>
<?php endforeach; ?>
按照我上面的做法,我只能在 PHP 中接收一个数组,因此,尝试将复选框从 devices
命名为 devices[]
但这次打印空白(什么都没有)。
当然,我在 PHP 中反序列化了它。
我做错了什么?
您需要为复选框使用数组样式的名称,以便在数组中接收所有复选框。
<input type="checkbox" name="devices[]" value="<?php $dataa = serialize($cases); $encodedd = htmlentities($dataa); echo $encodedd; ?>">
然后$_POST['devices']
将是所有选中值的数组。该数组的每个元素都将被序列化,您必须将其反序列化。
if (!empty($_POST['devices'])) {
$devices = array_map('unserialize', $_POST['devices']);
} else {
$devices = [];
}
var_dump($devices);
我有一个 table,其中包含数据和复选框。当我单击复选框时,我会获取每个选定项目的 ID,当提交时,我会在 PHP 中收到,但现在我改变了我的方法。现在,我想将整个数组提交给 PHP 但是我没有收到它:
<?php foreach ($arr_cases as $cases) : ?>
<tr>
<td>
<input type="checkbox" name="devices" value="<?php $dataa = serialize($cases); $encodedd = htmlentities($dataa); echo $encodedd; ?>">
</td>
</tr>
<?php endforeach; ?>
按照我上面的做法,我只能在 PHP 中接收一个数组,因此,尝试将复选框从 devices
命名为 devices[]
但这次打印空白(什么都没有)。
当然,我在 PHP 中反序列化了它。 我做错了什么?
您需要为复选框使用数组样式的名称,以便在数组中接收所有复选框。
<input type="checkbox" name="devices[]" value="<?php $dataa = serialize($cases); $encodedd = htmlentities($dataa); echo $encodedd; ?>">
然后$_POST['devices']
将是所有选中值的数组。该数组的每个元素都将被序列化,您必须将其反序列化。
if (!empty($_POST['devices'])) {
$devices = array_map('unserialize', $_POST['devices']);
} else {
$devices = [];
}
var_dump($devices);