Formulario AJAX-PHP (DUDA)
Publicado por Ahmed (2 intervenciones) el 02/03/2019 22:58:39
Buen día amigos, soy un principiante en esto y me acaba de surgir un problema el cual no he conseguido la manera de arreglar. Al enviar el formulario no logro devolver los resultados bien desde PHP. Según el código del Ajax, no me redirecciona a la página, tengo que actualizar la página para que tenga efecto el inicio de sesión. Para no extenderme más, no logro devolver los datos desde el PHP al AJAX
(Tengo en uso una plantilla, para los indicadores de error en los inputs)
ARCHIVO PHP
(Tengo en uso una plantilla, para los indicadores de error en los inputs)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
jQuery(document).ready(function($) {
//Contact
$('form.contactForm2').submit(function() {
var f = $(this).find('.form-group'),
ferror = false,
emailExp = /^[^\s()<>@,;:\/]+@\w[\w\.-]+\.[a-z]{2,}$/i;
f.children('input').each(function() { // Corrida sobre los inputs
var i = $(this); // Entrada actual
var rule = i.attr('data-rule');
if (rule !== undefined) {
var ierror = false; // Indicador de error para la entrada actual
var pos = rule.indexOf(':', 0);
if (pos >= 0) {
var exp = rule.substr(pos + 1, rule.length);
rule = rule.substr(0, pos);
} else {
rule = rule.substr(pos + 1, rule.length);
}
switch (rule) {
case 'required':
if (i.val() === '') {
ferror = ierror = true;
}
break;
case 'minlen':
if (i.val().length < parseInt(exp)) {
ferror = ierror = true;
}
break;
case 'email':
if (!emailExp.test(i.val())) {
ferror = ierror = true;
}
break;
case 'checked':
if (! i.is(':checked')) {
ferror = ierror = true;
}
break;
}
i.next('.validation').html((ierror ? (i.attr('data-msg') !== undefined ? i.attr('data-msg') : 'wrong Input') : '')).show('blind');
}
});
if (ferror) return false;
else
var action = $(this).attr('action');
if( ! action ) {
action = 'sessions/login.php';
}
jQuery.ajax({
type: "POST",
url: action,
cache:false,
data: $(this).serialize(),
dataType:'json',
sucess: (function(respuesta) {
var res = JSON.parse(respuesta);
if(!res.error) {
header('Location:welcome.php');
} else {
var res = JSON.parse(respuesta);
alert("Datos invalidos")
}
})
})
return false;
});
});
ARCHIVO PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
require 'conexion.php';
session_start();
$email=$_POST['email'];
$pwd=md5($_POST['password']);
$usuarios = $mysqli->query("SELECT * FROM usuarios WHERE email='$email'");
if($usuarios->num_rows == 1):
$datos = $usuarios->fetch_assoc();
$_SESSION['usuario']=$datos;
echo json_encode(array('error' => false,'user'=>$datos));
else:
echo json_encode(array('error' => true));
endif;
$mysqli->close();
?>
Valora esta pregunta
0