Ver Mensaje Individual
  #1 (permalink)  
Antiguo 12/10/2006, 12:27
slope
 
Fecha de Ingreso: febrero-2004
Mensajes: 20
Antigüedad: 20 años, 9 meses
Puntos: 0
problema con AJAX, :(

Bueno, me he recién metido hoy con ajax por lo que no se mucho..pero tengo muchos problemas para arrancar un code, lo que quiero es validar un usuario, y el procedimiento esta en 3 paginas.
A ver si alguien sabe decirme porque me falla el codigo, el problema esta en que no me devuelve ni Si ni No segun si la identificación és o no correcta, en FireFox no me funciona :S, el procedimiento que me hace es como si validara los datos pero me recarga la web a la inicial, como si iciera un Location() en php no se si me explico. Antes me funcionaba pero cambie algunas cosillas y no tengo narices de volver al estado en el que estaba en que, como minimo en IE me funcionaba :S. Las 3 paginas con su codigo:

login.php (aqui se rellena el formulario para ingresar como usuario)
Código:
<?php
if(!isset($_GET['admin']) && $_GET['admin'] != 'log')
{
	header("Location: ../../index.php");
}
?>
<script type="text/javascript" src="ajax.js"></script>
<div align="center">
	<strong>Identificació</strong>
	<br>
	<div id="error" align="center" style="color:#FF0000;"></div>
	<form method="post" onsubmit="validaradmin()" action="#">
		<div align="left">&nbsp;<strong>Usuari: </strong><input id="asunto" name="asunto" type="text" size="25" maxlength="30"><br>
		&nbsp;<strong>Contrasenya: </strong><input id="asunto" name="password" type="password" size="25" maxlength="25"></div>
		<input type="submit" value="Enviar">
		<input type="submit" value="Cancelar">
	</form>
</div>
ajax.js (el code de ajax)
Código:
function iniciar() {
    try {
        iniciar = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
        try {
            iniciar = new ActiveXObject("Microsoft.XMLHTTP");
        } catch (E) {
            iniciar = false;
        }
    }
    if (!iniciar && typeof XMLHttpRequest!='undefined') {
       iniciar= new XMLHttpRequest();
    }
    return iniciar;
}

function validaradmin() {
    error = document.getElementById("error");
    pass = document.getElementById("asunto");
    user = document.getElementById("password");
    _objetus=iniciar() //crear objeto
    _values_send="user="+user+"&password="+pass //variables
    _URL_="Admin/Log/identificar.php?" //URL
    _objetus.open("POST",_URL_,true); //abrir procesador
    _objetus.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); 
	//cabeceras POST
    _objetus.send('&'+_values_send); //enviar variables
    _objetus.onreadystatechange=function() { //funcion controlador
        if (_objetus.readyState==4) //control de estados del proceso
        {
                 //si se da un status 200 (TERMINADO CON EXITO)
           if(_objetus.status==200)
            {
            	if(_objetus.responseText == 'No')
            	{
            		error.innerHTML = "Identificació incorrecte";
            	}
            	else
            	{
            		error.innerHTML = "Identificació correcte";
            	}
            }
        }
    }
}
identificar.php (esta parte se encarga de validar si el usuario existe o no y responder segun su existència)
Código:
<?php
include("../../conectar.php");
$query = mysql_query("SELECT * FROM admin WHERE admin='".sha1(md5($_POST['user']))."' and pass='".sha1(md5($_POST['password']))."'");
$num = mysql_num_rows($query);
if($num <= 0)
{
	echo "No";
}
else
{
	echo "Si";
}
mysql_close($link);
?>
Gracias de adelanto