将_param与数组$i绑定到php数据库
我正在尝试将数组中的数据插入数据库。我发现很少有人有类似的问题,所以答案可能是重复的,但答案对我毫无帮助,因为他们的代码中没有将_param与数组$i绑定到php数据库,php,mysql,database,mysqli,Php,Mysql,Database,Mysqli,我正在尝试将数组中的数据插入数据库。我发现很少有人有类似的问题,所以答案可能是重复的,但答案对我毫无帮助,因为他们的代码中没有$I变量。你能帮我把这些值插入我的数据库吗 for ($i=0; $i < $_SESSION["count"]; $i++) { // Create connection $conn = new mysqli($servername, $username, $password, $dbname); // Check connection
$I
变量。你能帮我把这些值插入我的数据库吗
for ($i=0; $i < $_SESSION["count"]; $i++) {
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$stmt = ("INSERT INTO dite (name, lname, adress, bday, inf1, inf2, inf3, id_o, id_m, id_p) VALUES (?,?,?,?,?,?,?,?,?,?);");
$stmt->bind_param("sssssssiii",$_SESSION["name$i"], $_SESSION["lname$i"],
$_SESSION["adress$i"], $_SESSION["bday$i"],
$_SESSION["inf1$i"], $_SESSION["inf1$i"],
$id_o, $id_m, $id_p);
$stmt->execute();
printf("%d Row inserted.\n", $stmt->affected_rows);
$stmt->close();
$conn->close();
}
错误如下所示:
在第210行的C:\wamp64\www\login\file.php中的字符串上调用成员函数bind_param()
第210行是:
$stmt->bind_param("sssssssiii",$_SESSION["name$i"], $_SESSION["lname$i"],
准备并装订
在查询中,您只是绑定,没有准备
<?php
for ($i=0; $i < $_SESSION["count"]; $i++) {
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$stmt = $conn->prepare("INSERT INTO dite (name, lname, adress, bday, inf1, inf2, inf3, id_o, id_m, id_p) VALUES (?,?,?,?,?,?,?,?,?,?);");
$stmt->bind_param("sssssssiii",$_SESSION["name$i"], $_SESSION["lname$i"],
$_SESSION["adress$i"], $_SESSION["bday$i"],
$_SESSION["inf1$i"], $_SESSION["inf1$i"],
$id_o, $id_m, $id_p);
$stmt->execute();
printf("%d Row inserted.\n", $stmt->affected_rows);
$stmt->close();
$conn->close();
}
?>
您能告诉我们您的会话中有哪些数据吗?我还将移动DB连接并关闭循环外的内容,因为每次循环迭代时都会创建连接并关闭它。会话中的数据在上面的编辑中,我尝试将DB连接移动并关闭循环外的内容,但错误保持不变
<?php
for ($i=0; $i < $_SESSION["count"]; $i++) {
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$stmt = $conn->prepare("INSERT INTO dite (name, lname, adress, bday, inf1, inf2, inf3, id_o, id_m, id_p) VALUES (?,?,?,?,?,?,?,?,?,?);");
$stmt->bind_param("sssssssiii",$_SESSION["name$i"], $_SESSION["lname$i"],
$_SESSION["adress$i"], $_SESSION["bday$i"],
$_SESSION["inf1$i"], $_SESSION["inf1$i"],
$id_o, $id_m, $id_p);
$stmt->execute();
printf("%d Row inserted.\n", $stmt->affected_rows);
$stmt->close();
$conn->close();
}
?>