Php 执行Mysqli查询时出现错误500
我一直在用PHP开发一个小型表单获取和插入MySQL数据库系统。我以前在本地WAMP服务器上使用过这种类型的代码,现在我正在尝试在我的主机上实时使用这种代码,但是我一直使用下面的代码得到500错误的内部服务器错误 HTML:Php 执行Mysqli查询时出现错误500,php,mysql,mysqli,internal-server-error,http-status-code-500,Php,Mysql,Mysqli,Internal Server Error,Http Status Code 500,我一直在用PHP开发一个小型表单获取和插入MySQL数据库系统。我以前在本地WAMP服务器上使用过这种类型的代码,现在我正在尝试在我的主机上实时使用这种代码,但是我一直使用下面的代码得到500错误的内部服务器错误 HTML: <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" cont
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" type="text/css" href="Main_Stylesheet.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<title>Contact</title>
</head>
<body>
<nav class="navbar navbar-default" id="Body_Nav" style="margin-bottom: none;">
<div class="container-fluid">
<div class="navbar-header">
<a class="navbar-brand" href="index.php">Filosofie in Amsterdam</a>
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#myNavbar">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<div class="collapse navbar-collapse" id="myNavbar" >
<ul class="nav navbar-nav">
<li><a href="index.php">Home</a></li>
<li><a href="bestel.php">Bestel</a></li>
<li><a href="preview.php">Preview</a></li>
<li class="active"><a href="contact.php">Contact</a></li>
<li><a href="us.php">Over Ons</a></li>
<li><a href="donate.php">Doneren</a></li>
</ul>
</div>
</div>
</nav>
<div class="container-fluid" id="Contact_Main_Header">
<div class="row">
<div class="col-lg-12">
<h1 class="text-center" id="Contact_Main_Header_H1">Contact</h1>
</div>
</div>
</div>
<div class="container">
<div class="row">
<div class="col-lg-6">
<h2 class="text-center">Informatie</h2>
</div>
<div class="col-lg-6">
<h2 class="text-center">Nieuwsbrief</h2>
<p class="text-justify">Op de hoogte zijn van voortgang of het laatste nieuws? Geef je dan op via de nieuwsbrief hieronder:</p>
<form method="post" action="formvalid.php">
<div class="form-group">
<label for="Contact_Form_Email">Email Adres:</label>
<input type="email" name="Contact_Form_Email" class="form-control" id="Contact_Form_Email" placeholder="Plaats hier je email adres" required>
</div>
<div class="form-group">
<label for="Contact_Form_First_Name">Voornaam:</label>
<input type="text" name="Contact_Form_First_Name" class="form-control" id="Contact_Form_First_Name" placeholder="Plaats hier je voornaam" required>
</div>
<div class="form-group">
<label for="Contact_Form_Last_Name">Achternaam:</label>
<input type="text" name="Contact_Form_Last_Name" class="form-control" id="Contact_Form_Last_Name" placeholder="Plaats hier je voornaam" required>
</div>
<button type="submit" class="btn btn-default">Verzenden</button>
</form>
</div>
</div>
</div>
</body>
</html>
接触
接触
信息
尼乌斯布里夫
het laatste nieuws的hoogte zijn van voortgang作品?Geef je dan op via de nieuwsbrief hieronder:
电子邮件地址:
沃纳姆:
阿切特纳姆:
弗森登
而PHP:
<?php
$Server = "localhost";
$Username = "filoso1q_admin";
$PW = "Foxtrot15";
$DB = "filoso1q_nieuwsbrief";
$connection = mysqli_connect($Server, $Username, $PW, $DB);
if($connection = false) {
die("Error: " . mysqli_error_connect());
}
$Email = $_POST("Contact_Form_Email");
$First_Name = $_POST("Contact_Form_First_Name");
$Last_Name = $_POST("Contact_Form_Last_Name");
$sql = "INSERT INTO `Users` ('User_ID', 'Email', 'First_Name', 'Last_Name') VALUES (NULL, '$Email', '$First_Name', '$Last_Name');";
mysqli_query($sql);
mysqli_close($connection);
?>
我改变了主意,最终决定发布一个答案
如果($connection==false)
用一个等号指定if($connection==false)
,而不是用两个if($connection==false)
进行比较
mysqli\u connect()
上的手册:
(…)
,而不是方形的[…]
您还没有将连接传递到查询,这需要作为第一个参数
<?php
$Server = "localhost";
$Username = "filoso1q_admin";
$PW = "Foxtrot15";
$DB = "filoso1q_nieuwsbrief";
$connection = mysqli_connect($Server, $Username, $PW, $DB);
if($connection == false) {
die("Error: " . mysqli_error_connect());
}
$Email = $_POST["Contact_Form_Email"];
$First_Name = $_POST["Contact_Form_First_Name"];
$Last_Name = $_POST["Contact_Form_Last_Name"];
$sql = "INSERT INTO `Users` (`User_ID`, `Email`, `First_Name`, `Last_Name`) VALUES (NULL, '$Email', '$First_Name', '$Last_Name');";
mysqli_query($connection, $sql) or die(mysqli_error($connection));
mysqli_close($connection);
?>
除了dupe,还需要连接mysqli\u查询($connection,$sql)代码>您现在已经有了所有答案。$Email=$\u POST(“联系表单电子邮件”)代码>应该是$Email=$\u POST[“联系形式电子邮件”]
和所有其他的$\u POST
^等等。像这样的问题让我头晕目眩。好吧,这样做了,但仍然不会执行实际的查询。没有错误,没有任何内容,只有空白。如果($connection=false)
这是一个赋值。您需要将($connection==false)
作为比较。我将重新打开这个问题,让其他人修复所有这些错误。评论和评论中没有未涵盖的内容thttp://stackoverflow.com/questions/11321491/when-to-use-single-quotes-double-quotes-and-backticksThanks,错误报告实际上救了我。原来用户名很简单,因为网络主机最初设置它的方式而被拒绝访问@BoKamphues不客气Bo很高兴知道事情已经解决了。然而,一旦你完成了所有这些,你的代码确实包含了许多语法错误和缺少的参数,这就是我发布这个答案的原因。@BoKamphues这个问题也应该被标记为已解决。下面是如何返回此处并对勾号/复选标记执行相同操作,直到其变为绿色。这会通知社区,找到了解决方案。否则,其他人可能会认为问题仍然悬而未决,并可能希望发布(更多)答案。欢迎来到Stack。谢天谢地,这确实是非常混乱的代码。我现在就开始做标记@博坎普为博干杯。阅读有关使用准备好的语句的内容。我的答案中有一些链接可以看一下。如果和什么时候(或者已经和你的项目在一起),你应该使用这些。否则,您的服务器/数据库可能会受损。保持安全
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
// Then the rest of your code