Em-6ren">
gpt4 book ai didi

php - 我在插入数据库时​​使用 mysqli 准备好的语句抛出错误

转载 作者:行者123 更新时间:2023-11-30 00:53:03 25 4
gpt4 key购买 nike

根据之前的一篇文章,我正在尝试学习准备好的语句以正确清理所有内容。

这是我的表格:

<form name="login" action="regi.php" method="post" accept-charset="utf-8">
<label for="username">Username: </label><br />
<input type="username" name="username" placeholder="Handle" required><br />
<input type="hidden" name="sign_up_date" value="<?php echo $_POST['sign_up_date'] ?>">
<label for="usermail">Email: </label><br />
<input type="email" name="usermail" placeholder="yourname@email.com" required><br />
<label for="password">Password: </label><br />
<input type="password" name="password" placeholder="password" required><br />
<input type="submit" value="Login">
</form>

这是 regi.php 页面:

include("mysql_connect.php");
include("classes/insert.php");


if (!mysqli_query($mysqli,$stmt))
{
die('Error: ' . mysqli_error($mysqli));
}
echo "1 record added";

mysqli_close($mysqli);

这是我的 insert.php 页面:

$user = $_POST['username'];
$email = $_POST['usermail'];

$stmt = $mysqli->stmt_init();
if (!$stmt) {
echo "Init failed";
} else {
$cmd = "INSERT INTO people (username, email, sign_up_date) VALUES (?, ?, NOW() )";
if ($stmt->prepare($cmd)) {
$stmt->bind_param('ssd', $user, $email );
$stmt->execute();

echo $stmt->affected_rows . "row(s) inserted";

$stmt->close();

} else {
echo "Prepare failed";
}
}

这是我的错误消息:

本地主机通过 UNIX 套接字插入 0 行错误:

我认为我在 insert.php 页面上做错了什么?

任何帮助将不胜感激。谢谢。

最佳答案

您可以将查询编写为存储过程...这样实际查询存储在数据库中,而不是存储在您的 php 文件中。

此外,根据您现在所拥有的内容,您似乎没有将正确的值插入到表格的正确列中

这是存储过程方法

//更新您的 php 文件,以便读取以下变量

$cmd = call `people`.`procedurename` (?,?)";
$stmt->bind_param($user, $email );

登录mysql并使用此代码创建一个存储过程

DELIMITER $$
CREATE PROCEDURE `people`.`procedurename` (
IN username VARCHAR(50),
IN email VARCHAR(50)
)
BEGIN
INSERT INTO people (username, email, sign_up_date) VALUES (username, email, NOW());
END
$$

祝你好运:)

关于php - 我在插入数据库时​​使用 mysqli 准备好的语句抛出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20806636/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com