我一直在尝试验证登录表单,这是我的ajax代码:
<script>
$(document).ready(function () {
/* Asociar el evento de clic del botón 'igual'
con la lógica del negocio de la aplicación */
$('#formlogin').submit(function() {
procesar();
return false;
});
});
function procesar() {
var data = 'usuario=' + $('#usuario').val() + '&contrasenia=' + $('#contrasenia').val();
$.ajax ({
url: 'postlogin.php', /* URL a invocar asíncronamente */
type: 'post', /* Método utilizado para el requerimiento */
data: /* $('#formulario').serialize()*/data, /* Información local a enviarse con el requerimiento */
/* Que hacer en caso de ser exitoso el requerimiento */
success: function(response) {
if((response) == ""){
window.location = "./home";
}else{
$('#mensaje').html(response);
}
},
/* Que hacer en caso de que sea fallido el requerimiento */
error: function(response) {
/* Limpiar cualquier resultado anterior */
$('#mensaje').html('Error de subida');
}
});
}
</script>
这是我的php文件:
<?php
include('libreria.php');
$conn= conectar();
if(isset($_POST["usuario"])){
$resulusuario= verificarusuario($_POST["usuario"], $_POST["contrasenia"], $conn);
if($resulusuario->num_rows==0){
echo "ERROR: usuario o contraseña ingresados incorrectos";
} else{
session_start();
$_SESSION['usuario'] = $_POST['usuario'];
}
}else{
if(isset($_POST["mensaje"])) {
cargartweet($_POST["idusuario"], $_POST["mensaje"], $_POST["fecha"], $conn);
} else {
if(isset($_POST["nombreusuarioseguir"])) {
}
}
}
?>
为什么它总是经历ajax成功的其他想法?我的意思是,即使用户名和密码没问题,它也不会重定向我,最糟糕的是昨天它正在发挥作用......
答案 0 :(得分:0)
响应永远不等于""
。就这么简单。您需要执行console.log(response==="");
之类的操作,您将自己看到这一点。这将是错误的。响应可能是" "
或任何数量的事情。要运行一个合适的测试,但您需要找出response
等于""
的内容。
答案 1 :(得分:0)
我认为你的var数据值通常用于GET方法,试试数组:
var data = { usuario: $('#usuario').val(), contrasenia: $('#contrasenia').val() };
或更改类型以获取并将$ _POST替换为$ _GET。 祝你好运