有两个变量(登录名和密码)通过ajax
方法将php
传递给POST
。接下来,我需要从数据库中获取所有内容,以确定该名称是否已经忙碌。我正试图这样做,但没有任何反应。为什么? SQLs
中的phpmyadmin
没有犯错误。
$connection = mysqli_connect('127.0.0.1', 'root', '', 'myDb');
if( $connection == false)
{
echo 'Не удалось подключиться к базе данных!<br>';
echo mysqli_connect_error();
exit();
}
session_start();
$name = $_POST['user'];
$password = $_POST['pass'];
$_SESSION['user'] = $name;
$_SESSION['pass'] = $password;
if (!isset($name, $password) || empty($name) || empty($password)){
http_response_code(400);
die();
}
$count = mysqli_query($connection, "SELECT * FROM `users` WHERE(`Name` == '$name'");
if (mysqli_num_rows($count) == 0)
{
mysqli_query("INSERT INTO `users` (`Name`, `Password`) VALUES ('$name', '$password')");
}
mysqli_close($connection);
AJAX
$(document).ready(function() {
$('#submit').click(function() {
var name = $('#username').val();
var password = $('#password').val();
$.ajax({
type: 'POST',
url: 'php/login_script.php',
data: {
user: name,
pass: password
},
success: function() {
document.location = 'chat.html';
},
error: function() {
alert('Invalid name or password');
}
});
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
答案 0 :(得分:-1)
在你的select语句中,$ name的where子句有两个等号。可能的问题。
我建议你回顾一下你在做什么,部分内容是不好的做法,不推荐。