Hola colegas, bueno... ya uso el Prototype por bastante tiempo y ya tengo una forma de logearme usando el framwork pero se me dá la necesidad de poder logearme en la página que estoy visitando actualmente y espero me púedan ayudar con la solución...
En la página de servidor (php) mando el response para dar la instrucción a mi funcion ajax que se redirija la página una vez logeado:
Código PHP:
switch ($existe_Usuario) {
case 0:
echo "* ERROR: No existe el usuario.";
break;
case 1:
echo "success";/*logeo con exito*/
break;
case 2:
echo "ERROR: El usuario no tiene permiso para acceder";
break;
}
Y en mi función ajax pregunto si el response es "success" que significa que logeo bien y me redirije a la página por defecto que es el index
Código:
function sendLogin() {
new Ajax.Request("sesion_pro.php",
{
method: 'post',
parameters: 'usuario='+$F('usuario')+'&password='+$F('password'),
onCreate : function startLoading() {
$('cmsmensajeup').innerHTML= '<img src="images/sending.gif" />';
Form.Element.disable("Envia");
},
onComplete: function showResponse(req){
$('cmsmensajeup').innerHTML = '';
Form.Element.enable("Envia");
if(req.responseText == "success") {
window.location ='index.php';
}else{
alert(req.responseText);
}
}
});
}
Pero esto es un fastidio para el visitante por ejemplo estoy en una pagina "productos" me logeo y se va al "index" lo que deseo es que al logear se vaya a la página de donde me he logeado.
Pienso en enviar el $_SERVER['PHP_SELF'] desde el formulario y enviar esto y el 'success' como array... pero no sé como recibir ese array en javascript para separar el succes y el nombre de la página para hacer el location...