从$ _POST拆分变量

时间:2013-01-07 19:36:18

标签: php

我想从表单中拆分变量,然后将它们逐个输入到Mysql数据库中。 我的表4字段是:UserID,Status,HowLate,PassFail 在下面的示例中,UserID将是75和76,但可以是将来用户ID中的任何#。我对如何将这些动态变量插入数据库感到困惑,因为我不知道每次它们会是什么。我唯一的静态模式是当我循环遍历foreach($ _POST as $ key => $ value)时的任何帮助

$results = print_r($_POST, true);

表单中的样本数据

75=PRESENT

d75=on time

cc75=passed


76=LATE

d76=10 minutes

cc76=failed

我想写一个像:

这样的查询
insert into attendance (UserID, Status, HowLate, PassFail) values (76, 'Late', '10 minutes', 'failed')

也认为这是一个班级的学生,所以有20个记录一次回来

2 个答案:

答案 0 :(得分:2)

我猜你之所以这样做是因为你不知道你可以用HTML格式发送多维数组。我建议采用诸如此类的方法。

<input name="users[1][userid]" />
<input name="users[1][status]" />
<input name="users[1][howlate]" />
<input name="users[1][passfail]" />

<input name="users[2][userid]" />
<input name="users[2][status]" />
<input name="users[2][howlate]" />
<input name="users[2][passfail]" />

然后在php中,您可以通过以下方式访问它们。

foreach( $_POST['users'] as $key => $user )
{
    $userID = $user['userid'];  // same for the other fields. 
}

答案 1 :(得分:0)

分配你的变量(如果你没有使用PDO,你应该避免使用SQL注入),例如:

$userId = $_POST['userId']; // assuming that is what your field id is from the html form
$status = $_POST['status'];

然后插入数据库表:

insert into attendance (UserID, Status, HowLate, PassFail) values ($userId, '$status' etc.
相关问题