【问题标题】:Submitting values with $_POST in PHP在 PHP 中使用 $_POST 提交值
【发布时间】:2012-05-21 02:11:33
【问题描述】:

我有一个表单,其中包含通过循环动态生成的字段。 这是一对字段:姓名/电子邮件。循环为每个值生成两个输入字段。总是有一封电子邮件,而名称有时可能是空白的。

<div>
    <input type="text" name="name['.$i.']" value="'.$output['0'].'">
    <input type="text" name="email['.$i.']" value="'.$output['1'].'"> 
</div>

我知道 $_POST 会生成一个数组,如下所示:

Array ( [name] => Array ( [1] => Fname Lname [2] => ) [email] => Array ( [1] => abc@email.com [2] => abc@gmail.com ) ) 

提交此表单后,如何将值放入我的数据库表中?很难用两个字段来可视化这个循环......

【问题讨论】:

  • 如果我理解正确,您想知道如何获取发布的值,并生成 SQL 查询以将它们添加到您的数据库 - 对吗?如果是这样,您尝试过什么?
  • 为确保$_POST 具有您期望的内容,请在您的页面中添加此语句print_r($_POST);,然后您将能够看到其中的内容。

标签: php


【解决方案1】:

很难用两个字段来可视化这个循环

您必须选择其中一个字段作为循环的参考:

$names = $_POST['name'];
foreach($names as $key=>$name) {
    // $name is already defined. Define further fields based on $key
    $email = $_POST['email'][$key];
    // DB logic goes here. Do not forget to sanitize your inputs!
}

【讨论】:

  • 就是这样。我将使用电子邮件,因为它永远不会为空。谢谢。
【解决方案2】:
<?php
foreach($_POST as $key => $val)
{
    ...
}
?>

【讨论】:

    猜你喜欢
    • 2013-06-04
    • 2016-12-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-18
    • 2010-11-19
    • 2012-01-16
    相关资源
    最近更新 更多