php - 无法在 php 中发送带有多个复选框的多个值

标签 php mysql

我有以下形式,从 mysql DB 检索数据。

<?php 
    $get_name = mysql_query("SELECT * from premises WHERE status = 0") or die(mysql_error());

    while($motel = mysql_fetch_array($get_name)){
?>
<form method="post" action="includes/loanprocess.php">
    <tr>
        <td width="50"><input type="checkbox" name="m_id" value="<?php echo $motel['ID'];?>" /></td><td><?php echo $motel['name'];?></td><td><?php echo $motel['ID'];?></td><td><?php echo $motel['address'];?>
        </td>
    </tr>
<?php                       
    }
?>

    <tr>
        <td></td>
        <td><input type="submit" value="Proceed to Enter Details" /></td>
        <td></td>
</form> 

我需要通过复选框将值发送到另一个页面。 要捕获数据,loanprocess.php 的代码是

<?php
    include_once("connection.php");
    $id = $_POST['m_id'];

    foreach ($id as $key => $value) {   
        $m_id =  str_replace("'", "'", $key);
        echo $m_id;         
    }
?>

它不工作。

最佳答案

将名称设置为“m_id[]”,就像人们在评论中所说的那样。然后,在处理时执行以下操作:

$id = $_POST['m_id'];

foreach ($id as $db_id) {
    ...
}

这里的键没有意义,因为您拥有的数组是一个索引为 0、1、2 等的简单数组。例如,如果您有:

$id = Array ( [0] => B2465 [1] => B5454 [2] => G002 )

然后

foreach($id as $db_id) {
   echo $db_id;
}

会给你:

B2465
B5454
G002

关于php - 无法在 php 中发送带有多个复选框的多个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19795329/

相关文章:

php - 我需要搜索多变量并排序

php - 安卓| PHP | MySql - 将表情符号从 Android 保存到 Mysql 服务器

PHP-PDO try/catch 插入动态 html 链接

php - 代码点火器搜索

php - MYSQL在不同情况下给出相同的响应 '0 rows affected'

php - 巨大而长的 sql 查询延迟 php session_start() 直到查询结束

mysql - 迁移php4/mysql4到php5/mysql5 : switch to InnoDB?

PHP:显示 HTML 的前 500 个字符

php var 结构不清楚

php - Laravel/Envoyer 生产错误 - 类 View 不存在