0

我的问题是我有一个仅适用于 php 的登录面板。由于我做了一些更改以显示加载图标,然后刷新页面,我不得不实现 Ajax。

我的问题开始于,由于某种原因,当我单击提交按钮时,显示加载图标并且请求正确启动,但也出现错误“未定义索引”。

首先这是登录页面的 html 代码部分:

<form id="formlogin"name="form1">
    <table id="tabla_usuario">
        <tr>
            <td>Usuario</td>
            <td><input id="inputlogin" type="text" size="18" name="user" style="line-height:5px;height:20px;"></td>
        </tr>
        <tr>
            <td>Contraseña</td>
            <td><input id="inputlogin" type="password" size="18" name="pass" style="line-height:5px;height:20px;"></td>
        </tr>
        <tr>
            <td colspan="2"><input  type="submit" name="boton" value="Login" id="botonlogin"/></td>
        </tr>
    </table>
</form>

php登录代码是这样的:

<?php

if($conexion->connect_errno > 0){
    die('Unable to connect to database [' . $conexion->connect_error . ']');
}
// username and password sent from form
$minombreusuario= $_POST['user'];
$micontrasena= $_POST['pass']; 
//consulta//
$sql = $conexion->prepare("SELECT * FROM $tbl_name WHERE Usuario= ? and password= ?");
if (!$sql) {
    print ("Error en prepare: " . $conexion->error . "n");
    exit;
}


if (!$sql->bind_param("ss",$minombreusuario,$micontrasena)) {
    print("Error en bind_param: " . $sql->error . "n");
    exit;
}
if (!$sql->execute()) {
echo "Falló la ejecución: (" . $sql->errno . ") " . $sql->error;
}
$sql->store_result();
if ($sql->num_rows==1) {


//Inicio session//
$_SESSION['usuari'] = $_POST['user'];

}
else {
echo "Wrong Username or Password";
}
?>

然后这是ajax js:

$(document).ready(function(){

$('#botonlogin').on('click',function(e){


e.preventDefault();


var datos = $('#formlogin').serialize();

$.ajax({

url:'checklogin.php',
data: datos,
type: 'POST',
success: function() {
window.location.reload(true);
}

});

});

});

最后显示加载脚本:

<script type="text/javascript">
$(document).ready(function() {
   $("#contenedor_carga").on("ajaxStart", function(){
$(this).show(); 
   }).on("ajaxStop", function(){
$(this).hide();
    });
});

不知道我哪里错了,我为大量的代码道歉,希望你能帮助我解决问题。

4

0 回答 0