dongruo0909 2013-02-25 16:50
浏览 40
已采纳

使用一个PHP表单在MySQL中插入多个记录

INSERT multiple records in MySQL with one PHP form.

Simple Form

<form action="process.php" method="post">
<p><label>Beamline ID</label>
<input type="text" name="bline_id[][bline_id]" />
<label>Flow</label>
<input type="text" name="flow[][flow]" />
</p>
<p><label>Beamline ID</label>
<input type="text" name="bline_id[][bline_id]" />
<label>Flow</label>
<input type="text" name="flow[][flow]" />
</p>
<p><label>Beamline ID</label>
<input type="text" name="bline_id[][bline_id]" />
<label>Flow</label>
<input type="text" name="flow[][flow]" />
</p>
<p><label>Beamline ID</label>
<input type="text" name="bline_id[][bline_id]" />
<label>Flow</label>
<input type="text" name="flow[][flow]" />
</p>
<p><label>Beamline ID</label>
<input type="text" name="bline_id[][bline_id]" />
<label>Flow</label>
<input type="text" name="flow[][flow]" />
</p>
<input name="Submit" type="submit" />
</form>

//process.php

<?php
// connect to the database
include('connect-db.php');


$cnt = count($_POST['bline_id']);
$cnt2 = count($_POST['flow']);

if ($cnt > 0 && $cnt == $cnt2) {
    $insertArr = array();
    for ($i=0; $i<$cnt; $i++) {
        $insertArr[] = "('" . mysql_real_escape_string($_POST['bline_id'][$i]) . "', '" . mysql_real_escape_string($_POST['flow'][$i]) . "')";
}

 $query = "INSERT INTO bltest (bline_id, flow) VALUES " . implode(", ", $insertArr);
 mysql_query($query) or trigger_error("Insert failed: " . mysql_error());
}

echo("<pre>
");
print_r($_POST);
echo("</pre>
");




mysql_close($connection);
?> 

Array results

 Array
 (
 [bline_id] => Array
    (
        [0] => Array
            (
                [bline_id] => 1
            )

        [1] => Array
            (
                [bline_id] => 2
            )

        [2] => Array
            (
                [bline_id] => 3
            )

        [3] => Array
            (
                [bline_id] => 4
            )

        [4] => Array
            (
                [bline_id] => 5
            )

    )

[flow] => Array
    (
        [0] => Array
            (
                [flow] => 11
            )

        [1] => Array
            (
                [flow] => 22
            )

        [2] => Array
            (
                [flow] => 33
            )

        [3] => Array
            (
                [flow] => 44
            )

        [4] => Array
            (
                [flow] => 55
            )

    )

[Submit] => Submit Query
)

the INSERT result is of course 5 rows but no data inserted for $bline_id or $flow. But looking at the array, that is the correct data.

  • 写回答

3条回答 默认 最新

  • doyp9057 2013-03-03 15:56
    关注

    OMG!!!! I finally got it! It was my stupid form!

    corrected below-------

    <form action="process.php" method="post">
    <p><label>Beamline ID</label>
    <input type="text" name="bline_id[]" value="<?php echo $bline_id; ?>" />
    <label>Flow</label>
    <input type="text" name="flow[]"  value="<?php echo $flow; ?>" />
    </p>
    <p><label>Beamline ID</label>
    <input type="text" name="bline_id[]" value="<?php echo $bline_id; ?>" />
    <label>Flow</label>
    <input type="text" name="flow[]"  value="<?php echo $flow; ?>" />
    </p>
    <p><label>Beamline ID</label>
    <input type="text" name="bline_id[]"  value="<?php echo $bline_id; ?>"/>
    <label>Flow</label>
    <input type="text" name="flow[]" value="<?php echo $flow; ?>" />
    </p>
    <p><label>Beamline ID</label>
    <input type="text" name="bline_id[]" value="<?php echo $bline_id; ?>" />
    <label>Flow</label>
    <input type="text" name="flow[]" value="<?php echo $flow; ?>" />
    </p>
    <p><label>Beamline ID</label>
    <input type="text" name="bline_id[]" value="<?php echo $bline_id; ?>" />
    <label>Flow</label>
    <input type="text" name="flow[]" value="<?php echo $flow; ?>" />
    </p>
    <input name="Submit" type="submit" />
    </form>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 对接wps接口实现获取元数据
  • ¥20 给自己本科IT专业毕业的妹m找个实习工作
  • ¥15 用友U8:向一个无法连接的网络尝试了一个套接字操作,如何解决?
  • ¥30 我的代码按理说完成了模型的搭建、训练、验证测试等工作(标签-网络|关键词-变化检测)
  • ¥50 mac mini外接显示器 画质字体模糊
  • ¥15 TLS1.2协议通信解密
  • ¥40 图书信息管理系统程序编写
  • ¥20 Qcustomplot缩小曲线形状问题
  • ¥15 企业资源规划ERP沙盘模拟
  • ¥15 树莓派控制机械臂传输命令报错,显示摄像头不存在