更新代码:
if (isset($_POST['submit'])) {
/* Create a prepared statement */
$query = "INSERT INTO log_dates(week_date, crew_chief, monday_crew) values(?,?,?)";
$stmt = mysqli_prepare($connection, $query);
$returnedData = $_POST['data'];
foreach($returnedData as $data) {
$week_date = $data['week_date'];
$crew_chief = $data['crew_chief'];
$monday_crew = $data['monday_crew'];
$stmt->execute();
}
mysqli_stmt_bind_param($stmt, 'sss', $week_date, $crew_chief, $monday_crew);
/* Execute it */
mysqli_stmt_execute($stmt);
/* Close statement */
mysqli_stmt_close($stmt);
} // end if
这是我的POST阵列的样子:
Array ( [0] => Array ( [week_date] => 2013-07-08 - 2013-07-14 ) [1] => Array ( [crew_chief] => Alan ) [2] => Array ( [monday_crew] => dd ) )
答案 0 :(得分:4)
这不是你如何绑定参数。您将多个参数打到SINGLE值。绑定调用应该是
mysqli_stmt_bind_param($stmt, 'ss', $foo, $bar);
^^--two params
^^^^^^^^^^---two values
foreach($returnedData as $data) {
$bar = $data['crew_chief'];
$foo = $data['week_date'];
$stmt->execute();
}
一旦变量被绑定,只需为它们分配新值将导致语句上的下一个 - > execute()调用获取这些新值。
答案 1 :(得分:1)
我有个你的想法。你需要知道你在做什么。
首先,您需要开发一个要针对SQL Server运行的纯SQL查询。没有预备语句,没有mysqli,没有PHP。一个干净的SQL。
SQL现在是您的问题,而不是将其发送到服务器的API。最后,一步一步,进一步开发您需要的程序。这是一份粗略的清单:
您可以从上面的任何阶段寻求帮助,但必须遵循该列表。因为看起来你要求最后一项没有完成第一项。
希望它有所帮助。