使用变量插入SQL数据库时出现错误500

问题描述:

我得到了这段代码,它给了我一个错误500. 我很可能在这里出错了,但我真的需要一些帮助。使用变量插入SQL数据库时出现错误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

尝试'使用error_reporting(E_ALL);'和'的ini_set( 'display_errors设置',1)',你会得到你的错误 –

+0

请添加更多信息。 –

+0

“500内部服务器错误”(或空白页面)意味着您的脚本正在抛出错误,但PHP配置为将其隐藏起来。你需要尽快修复它,因为没有错误消息的帮助编码很难。作为快速入门,您可以在计算机的系统范围的'php.ini'文件([details here](http://*.com/a/5680885/13508))中设置'error_reporting'和'display_errors'指令。错误的拇指规则:在开发中显示,登录生产。 –

你需要把你的查询字符串""第一

<?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); 

先看到任何更可能出现的错误,因为它可以帮助找到问题类型这个开头:

ini_set('display_errors', 1); 
ini_set('display_startup_errors', 1); 
error_reporting(E_ALL); 

个人,因为我总是用“”周围的SQL查询,我看你不这样做,也许你应该添加它们也因此使它:

$sql = "INSERT INTO medlemmer (fornavn, efternavn, postnummer, alder)VALUES 
('$fornavn', '$efternavn', '$postnummer', '$alder')"; 

而且我认为$康恩在您的config.php中定义的?

正如评论中所述,首先确保您启用了错误报告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')";