如何从一个表单存储多个同名数组

时间:2014-05-04 17:31:32

标签: php mysql

假设我试图存储名称,这里的三个人的电话邮件是我的代码..

<form method="post" action="demo.php">
    <input type="text" name="name[]">
    <input type="text" name="phone[]">
    <input type="text" name="email[]">
    <br>
    <input type="text" name="name[]">
    <input type="text" name="phone[]">
    <input type="text" name="email[]">
    <br>
    <input type="text" name="name[]">
    <input type="text" name="phone[]">
    <input type="text" name="email[]">
    <br>
    <input type="submit">
</form>

现在是demo.php的代码,这是我的行动页......

foreach(($_POST['name']as $id)
    {
        $name= mysql_real_escape_string($id);

        $query1 = "INSERT INTO list (name,phone,email) VALUES ('$name','$_POST[phone]',$_POST[email])";
        $query = mysql_query($query1);
    }
    if($query)
    {
        return true;
    }
    else{
        echo "Something Wrong";
    }

正确存储三个人的名字但不存储三个人的电话和电子邮件 我尝试使用for循环,但没有得到结果,PLZ任何人告诉我如何从单个表单存储多个数组。

1 个答案:

答案 0 :(得分:0)

你可以这样做:

// variables of the form
$phone = $_POST['phone'];
$email = $_POST['email'];

foreach($_POST['name']as $k => $id)
{
    $name= mysql_real_escape_string($id);

    $query1 = "INSERT INTO list (name,phone,email) VALUES ('$name','$phone[$k]','$email[$k]')";
    $query = mysql_query($query1);
}
if($query)
{
    return true;
}
else{
    echo "Something Wrong";
}