我有一个网页应该使用用户输入执行插入语句,我相信我已经正确设置了所有内容,但是当我运行脚本时,表没有更改,我也没有收到错误消息。我认为我的语法可能存在问题:
"INSERT INTO student (FirstMidName,lastname) VALUES ('{$conn-
>real_escape_string($_POST['FirstMidName'])} ,
{$conn->real_escape_string($_POST['lastname'])}')";
以下是完整的参考代码:
<?php
if ($_SERVER["REQUEST_METHOD"]=="POST"){
$host = "localhost";
$db = "cis475";
$user = "root";
$pw = "";
$conn = new mysqli ($host, $user, $pw, $db);
if($conn){echo "Connection established <br>";}
if($conn->connect_error) die($conn->connect_error);
$sql = "INSERT INTO student (FirstMidName,lastname) VALUES ('{$conn->real_escape_string($_POST['FirstMidName'])} , {$conn->real_escape_string($_POST['lastname'])}')";
$insert = $conn->query($sql);
$conn->close();
}
?>
<html>
<form method="post" action="">
First Name:<input name="FirstMidName" type="text">
Last Name:<input name="lastname" type="text">
<input type="submit" value="Submit Form">
</form>
</html>
发布于 2018-12-04 17:32:58
如果没有正确输出,则很难找到导致错误的错误。我会尝试清理您的Sql查询并输出错误。尝试将您的PHP脚本更改为:
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$host = "localhost";
$db = "cis475";
$user = "root";
$pw = "";
$conn = new mysqli ($host, $user, $pw, $db);
if ($conn) {
echo "Connection established <br>";
}
if ($conn->connect_error) {
die($conn->connect_error);
}
$firstMidName = $conn->real_escape_string($_POST['FirstMidName']);
$lastName = $conn->real_escape_string($_POST['lastname']);
$sql = "INSERT INTO student (FirstMidName,lastname) VALUES ('$firstMidName', '$lastName')";
if (!$conn->query($sql)) {
echo "Error message:" + $conn->error;
}
$conn->close();
}
https://stackoverflow.com/questions/-100006211
复制相似问题