Я новичок в PHP
и Ajax
.Я разрабатываю форму входа в систему с session
, используя оба языка с MySql
, просматривая видеоурок.Наконец, я получил сообщение об ошибке, например, неверное перенаправление email
или password
на страницу приветствия.
Код ниже:
<style>
#box{
width:100%;
max-width:500px;
border:1px solid #ccc;
border-radius:5px;
margin:0 auto;
padding:0 20px;
box-sizing:boader-box;
height:270px;
}
</style>
<div id=box>
<form method="POST" class="form-signin">
<div class="account-logo">
<img src="assets/img/logo-dark.png" alt="">
</div>
<div class="form-group">
<label> Email</label>
<input type="email" name="email" id="email" autofocus="" class="form-control">
</div>
<div class="form-group">
<label>Password</label>
<input type="password" name="password" id="password"class="formcontrol">
</div>
<div class="form-group text-right">
<a href="forgot-password.html">Forgot your password?</a>
</div>
<div class="form-group text-center">
<input type="button" class="btn btn-primary account-btn" name="login" value="DO LOGIN" id="login_button">
</div>
<div id="error"> </div>
<div class="text-center register-link">
Don’t have an account? <a href="register.html">Register Now</a>
</div>
</form>
</div>
Запрос Ajax будет:
$(document).ready(function(){
$('#login_button').click(function(){
var email = $('#email').val();
var password = $('#password').val();
if($.trim(email).length>0 && $.trim(password).length>0 ){
$.ajax({
type: "POST", // Type of request to be send, called as method
url: "auth/logged.php", // Url to which the request is send
data: {"email":email,"password":password},
cache:false,
beforeSend:function()
{
$('#login_button').val("connecting.....");
},
success: function(data)
{
if(data){
$('body').load("index.php").hide().fadeIn(1500);
}else{
var option ={
distace :'40',
direction:'left',
times:3
}
$('#box').effect('shake',option,800);
$('#login_button').val('Login');
$('#error').html("<span class='text-danger'> Invalid username or password </span>");
}
}
});
}else{
return false;
}
});
});
Файл logged.php будет
<?php
include "dbconnection.php";
session_start();
if (isset($_POST['email']) && isset($_POST['password']) ) {
$email=mysqli_real_escape_string($conn,$_POST['email'] );
$password=md5(mysqli_real_escape_string($conn,$_POST['password']) );
$sql = "SELECT * FROM users WHERE email = '". $email."' AND '". $password."' ";
$result= mysqli_query($conn,$sql);
$num_row= mysqli_num_rows($result);
if($num_row>0)
{
$data=mysqli_fetch_array($result);
$_SESSION['username']=$data['username'];
echo $data['username'];
}
}
?>
Всякий раз, когда я вводил какие-либо данные, правильные или неправильные, они перенаправлялись на страницу приветствия.Пожалуйста, помогите мне.