我收到了这段代码,它给了我一个错误500。 我可能在这里遇到了一些问题,但我真的需要一些帮助。
这是我的代码
<?php include('index.php'); ?>
<?php include('config.php'); ?>
<?php
$fornavn = $_POST['fornavn'];
$efternavn = $_POST['efternavn'];
$postnummer = $_POST['postnummer'];
$alder = $_POST['alder'];
$sql = INSERT INTO medlemmer (fornavn, efternavn, postnummer, alder)
VALUES ('$fornavn', '$efternavn', '$postnummer', '$alder');
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
?>
POST标签在index.php中是相同的。 请帮忙。 提前谢谢!
答案 0 :(得分:4)
您需要先将查询放在字符串""
中
<?php include('index.php'); ?>
<?php include('config.php'); ?>
<?php
$fornavn = $_POST['fornavn'];
$efternavn = $_POST['efternavn'];
$postnummer = $_POST['postnummer'];
$alder = $_POST['alder'];
$sql = "INSERT INTO medlemmer (fornavn, efternavn, postnummer, alder)
VALUES ('$fornavn', '$efternavn', '$postnummer', '$alder');";
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
?>
还可以使用预备语句来防止sql注入
启用PHP错误,以便您可以获得错误。在PHP文件中添加以下行
ini_set('display_errors',1);
error_reporting(E_ALL);
答案 1 :(得分:1)
首先看到任何可能的错误,因为它可能有助于在开头找到问题类型:
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
我个人总是在SQL-Query周围使用“”,而且我发现你还没有这样做,也许你应该添加它们,所以就这样做:
$sql = "INSERT INTO medlemmer (fornavn, efternavn, postnummer, alder)VALUES
('$fornavn', '$efternavn', '$postnummer', '$alder')";
另外我假设你的config.php中定义了$ conn?
答案 2 :(得分:1)
正如评论中所述,首先请确保您启用了错误报告error_reporting(E_ALL);
和ini_set('display_errors',1)
。
另请查看此SQL查询字符串,该字符串未包含在引号中。
$sql = INSERT INTO medlemmer (fornavn, efternavn, postnummer, alder)
VALUES ('$fornavn', '$efternavn', '$postnummer', '$alder');
应该是
$sql = "INSERT INTO medlemmer (fornavn, efternavn, postnummer, alder)
VALUES ('$fornavn', '$efternavn', '$postnummer', '$alder')";