作为更大系统的一部分,我在网页中嵌入了一段PHP代码,用于将值插入数据库.但是,它返回一个完全空白的HTML页面.
<?php
$mysqli = new mysqli("thing", "stuff", "morestuff", "otherstuff");
if ($mysqli->connect_errno) {
echo "Failed to connect to MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error;
}
$Name1 = $_POST['forename'];
$Name2 = $_POST['surname'];
$Email = $_POST['email'];
$Admin = $_POST['admin'];
$Pass = "password";
flag = 0;
$User = $Name1;
if (flag == 0) {
$SQLQuery2 = "INSERT INTO
Table1 (Forename, Surname, Admin, EmailAddress, Username, Password)
VALUES ('$Name1', '$Name2', '$Admin', '$Email', '$User', '$Pass');";
$mysqli->($SQLQuery2);
$contents = '<h1>User creation successful</h1>';}
else {$contents = '<h1>Error: Email address already in use.</h1>';}
?>
<html>
<head>
<title>Add User</title>
</head>
<body>
<?php
echo $contents;
?>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我已经从整个系统中删除了它,并且(虽然它显然没有真正的连接细节)连接细节不是问题,因为我在我的系统中的其他地方使用相同的SQL连接方法,具有相同的细节,它工作正常.所有帖子值也正确传递.
我已经检查了半冒号至少六次,我不知道问题是什么.有人可以帮忙吗?
编辑:我已经改变flag到$flag现在,但我仍然有同样的错误.我已经包括在内了
error_reporting(-1);
ini_set("display_errors", 1);
Run Code Online (Sandbox Code Playgroud)
在文件右下方<?php但它没有做任何事情.
第二次编辑:另一个主要问题mysqli->($SQLQuery2)应该是mysqli->query($SQLQuery2).我修好了它现在正在工作.
获得更好的编辑器:
flag = 0;
...
if (flag == 0) {
$flag = 0;
...
if ($flag == 0) {
Run Code Online (Sandbox Code Playgroud)
此外,如果您运行php -l file.php它将检查错误.
同时,在开发过程中:
error_reporting(E_ALL);
ini_set('display_errors', '1');
Run Code Online (Sandbox Code Playgroud)