这是我第一次将Ajax与PHP结合使用,而且我很难将其付诸实践。
我有这段Ajax代码:
$.ajax({
url: '/dev/php/login.php',
type: 'POST',
dataType: 'json',
error: function(date) {
console.log(date);
alert("Het emailadres of wachtwoord is onjuist");
},
data: {email:email,password:password},
success: function(response) {
console.log(response);
alert(response);
}
})
使用此PHP代码:
<?php
$servername = "blur";
$username = "blur";
$dbpassword = "blur";
$dbname = "blur";
$emailadres = $_POST['email'];
$password = $_POST['password'];
// Create connection
$conn = new mysqli($servername, $username, $dbpassword, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$encodedpass = md5($password);
$sql = "SELECT first_name, last_name FROM account WHERE `email`='$emailadres' AND `password`='$encodedpass'";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo "Name: " . $row["first_name"]. " " . $row["last_name"] . " WEEEE";
}
}
else {
if (!function_exists('http_response_code'))
{
function http_response_code($newcode = NULL)
{
static $code = 200;
if($newcode !== NULL)
{
header('X-PHP-Response-Code: '.$newcode, true, $newcode);
if(!headers_sent())
$code = $newcode;
}
return $code;
}
}
}
$conn->close();
?>
由于某种原因,Ajax中的错误函数总是被调用,即使响应文本回应了数据库中的名称。它看起来像这样: