我有一个带有公式编写器的html网站,可对php脚本进行操作。 我想做的是将公式化器中的数据写入本地主机上的mySQL数据库中。
我知道数据库是可访问的,并且数据正确地提供给了php脚本(我正在使用MAMP服务器来存储数据库和文件)。 据我所知,准备陈述是正确的。 execute语句中的“ id”是自动递增的,因此我将其设置为NULL。
$ link是db_connection.php中的db-access
<?php
include("db_connection.php");
?>
<html>
<header>
<meta charset="utf-8">
<title>Stackoverflow Code</title>
</header>
<body>
<?php
$name = $_POST['name'];
$timeUnits = $_POST['timeUnits'];
$description = $_POST['description'];
$eintrag = $link->prepare("INSERT INTO `projekt`(`id`,`time-units`, `beschreibung`, `name`) VALUES (?,?,?,?)");
echo "It's working fine till this line";
$eintrag->execute([NULL, $timeUnits, $description, $name]);
?>
</body>
</html>
我希望它可以将数据写入数据库,但是我得到的是内部服务器错误(错误500),该错误立即从浏览器控制台和空白网站中消失了。
答案 0 :(得分:-1)
您可以在Web服务器上查看错误日志以查看mysql错误,或将执行放在try catch块中以捕获异常。
错误可能是因为说id = null,因为您不能使用null主键 您需要一起忽略所有ID,它会自动递增。
$eintrag = $link->prepare("INSERT INTO `projekt`(`time-units`, `beschreibung`, `name`) VALUES (?,?,?)");
$eintrag->execute([$timeUnits, $description, $name]);
Execute执行查询,将参数放在“?”是然后运行它。将链接到文档,但没有数据库连接文件,我不知道您使用的是mysqli还是pdo。