php - 如何将 append 输入字段数据插入到 mySQL 数据库?

标签 php jquery mysql append

我将一些输入字段 append 到我的容器中,并希望在我的 mysql 数据库中为每个字段添加一个条目。到目前为止效果很好:

<?php
if (isset($_POST['submit_val'])) {
    if ($_POST['name']) {
        foreach ( $_POST['name'] as $key=>$value ) {
            $pdo = $db->prepare('INSERT INTO friends (name) values(:name) ');
              $pdo->execute(array(
                ':name' => $value,
              ));
        }
    }
    echo "<i><h2><strong>" . count($_POST['name']) . "</strong> items added</h2></i>";
}
?>
<?php if (!isset($_POST['submit_val'])) { ?>
    <form method="post" action="">
        <div id="container">
                <p id="add_field"><a href="#"><span>Click To Add</span></a></p>
        </div>
        <input type="submit" name="submit_val" value="Submit" />
        </form>
<?php } ?>



<script type="text/javascript">
    var counter = 0;
        $(function() {
            $('p#add_field').click(function() {
                counter += 1;
                $('#container').append(
                     '<strong>No. ' + counter + '</strong><br />' + '<input id="field_' + counter + '" name="name[]' + '" type="text" /><br/>');
            });
       });
</script>

但我希望不仅有 name 作为字段,还希望有 agegender:

$('#container').append('<strong>No. ' + counter + '</strong><br />' + '<input id="field_' + counter + '" name="name[]' + '" type="text" /><input id="field_' + counter + '" name="age[]' + '" type="text" /><input id="field_' + counter + '" name="gender[]' + '" type="text" /><br/>');

并将它们添加到数据库中:

 $pdo = $db->prepare('INSERT INTO friends (name,age,gender) values(:name,:age,:gender) ');
    $pdo->execute(array(
         ':name' => $value,
         ':age' => $value,
         ':gender' => $value,
   ));

但是现在我有一个理解上的逻辑问题。如何将其他值放入我的 foreach 循环 foreach ( $_POST['name'] as $key=>$value ) { 因为我需要一个循环来处理所有值?

我可以想象这样的事情:

foreach ( $_POST['name'] as $key=>$name && $_POST['age'] as $key=>$age && $_POST['gender'] as $key=> $性别){

最佳答案

假设所有三个字段的出现次数相同,您可以使用:

foreach($_POST['name'] as $key=>$val){
    echo $val." ".$_POST['age'][$key]." ".$_POST['gender'][$key]."<br>";// you can use these value in your insert

}

关于php - 如何将 append 输入字段数据插入到 mySQL 数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41954606/

相关文章:

MySQL - 如何在数据库中创建一个自动增量字段?

python - 如何使用 Python 查询 MySQL 数据快照?

php - 从不同的Mysql表中获取具有相同名称的列

php - 更新 codeigniter 中的数组

php - REST API : Request body as JSON or plain POST data?

javascript - 如何循环遍历 DOM 中的输入范围 slider 列表并使用 Each 循环捕获值

python - SQLAlchemy:将查询结果插入另一个表

php - SQL count all 不在 php 中执行

javascript - 窗口宽度和滚动宽度值

javascript - JQuery 单击事件在第二次单击时触发,但在第一次单击时不触发