Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在php中,如何在会话结束时附加新元素?_Php_Html_Session_Checkbox - Fatal编程技术网

在php中,如何在会话结束时附加新元素?

在php中,如何在会话结束时附加新元素?,php,html,session,checkbox,Php,Html,Session,Checkbox,我有一个会话,其中存储了一些id,我想在该会话的末尾添加一个字符串(附加到其各自的id) 这里我有一个包含一些元素的表,我有一些复选框,因此当选中每个复选框时,我会获取它们的ID,当发布时,我会将这些ID存储到会话中: <form method="post"> <?php if (!empty($arr_devices)) { ?> <?php foreach ($arr_devices as $device) : ?>

我有一个会话,其中存储了一些id,我想在该会话的末尾添加一个字符串(附加到其各自的id)

这里我有一个包含一些元素的表,我有一些复选框,因此当选中每个复选框时,我会获取它们的ID,当发布时,我会将这些ID存储到会话中:

    <form method="post">
    <?php if (!empty($arr_devices)) { ?>
        <?php foreach ($arr_devices as $device) : ?>
            <tr>
                <td>
                    <input type="checkbox" name="devices[]" value="<?php echo $device["id"] ?>">
                    <?php echo '<a href=error_report.php?device_id=' . urlencode($device["id"])  . "&dev_name=" . urlencode($device["name"]) . "&imei=" . urlencode($device["serial_imei"]) . "&serial_no=" . urlencode($device["serial_no"]) . "&device_no=" . urlencode($device["device_no"]) .  '>' . $device["name"] . '</a>'; ?>
                </td>

                <td>
                    <?php echo '<a href=error_report.php?device_id=' . urlencode($device["id"]) .  "&dev_name=" . urlencode($device["name"]) . "&imei=" . urlencode($device["serial_imei"]) . "&serial_no=" . urlencode($device["serial_no"]) . "&device_no=" . urlencode($device["device_no"]) .  '>' . $device["device_no"] . '</a>'; ?>
                </td>

                <td>
                    <?php echo '<a href=error_report.php?device_id=' . urlencode($device["id"]) .  "&dev_name=" . urlencode($device["name"]) . "&imei=" . urlencode($device["serial_imei"]) . "&serial_no=" . urlencode($device["serial_no"]) . "&device_no=" . urlencode($device["device_no"]) . '>' . $device["barcode"] . '</a>'; ?>
                </td>

<td>
                        <div class="input-group">
                            <textarea name="dev_comment" placeholder="Write your comment here" rows="1" cols="50"><?php echo $dev_comment; ?></textarea>
                        </div>
                    </td>

            </tr>
    <?php endforeach; ?>
    <?php } ?>
    <input class="btn" type="submit" name="submit" value="Report">
    <form>

我想做的是在该会话中添加
$dev_注释
。因此,当我使用该会话时,我需要将$dev_注释附加到每个相应的id。我如何实现它?

首先,确保$dev_会话['devices_id']存在并且是一个数组:

if(!isset($_SESSION['devices_id'])) {
    $_SESSION['devices_id'] = [];
}
“$\u POST['devices']是一个数组,您可以轻松合并:

$_SESSION['devices_id'] = array_merge($_SESSION['devices_id'], $_POST['devices']);

$\u SESSION['devices\u id']=$\u POST['devices'.$dev\u comment@dean打印的是“数组”,而不是值suh@bhm您不需要这样评论。评论+否决票的问题已经在Meta上讨论过了。许多人只是选择用DV继续前进。许多人提供建议。许多人试图为新手开辟道路。现在这个用户已经不存在了。
$_SESSION['devices_id'] = array_merge($_SESSION['devices_id'], $_POST['devices']);