Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/11/2009, 22:14
Ixtleco
 
Fecha de Ingreso: noviembre-2003
Ubicación: Puente de ixtla
Mensajes: 773
Antigüedad: 21 años
Puntos: 0
Exclamación problema al enviar checkbox con ajax

hola amigos tengo un problema, Hize un sistema de login con php y ajax y pues ya funciona lo unico que me falla es recibir el checkbox que dice si los va a recordar la pagina o no. El problema es que siempre me envia el mismo valor este activada o no y no se cual sea el problema.
les pongo el codigo

el formulario:
Código HTML:
<div id="Socios">
<div class="izq">
<h1>&iexcl;&Aacute;rea de Socios!</h1><br />
<fieldset>
<form name="login" action="javascript:GuardarRegistro();" autocomplete="off" method="POST">
<table>
	<tr>
		<td colspan="2" bgcolor="#C10000"><div> .: L O G I N :. </div></td>
	</tr>
	<tr>
		<td><br />Usuario</td>
		<td><br /><input type="text" name="user" size="20" maxlength="35"></td>
	</tr>
	<tr>
		<td><br />Password&nbsp;&nbsp; </td>
		<td><br /><input type="password" name="pass" size="20" maxlength="50"></td>
	</tr>
	<tr>
		<td colspan="2"><br /><center><input type="image" title="Login" src="css/images/ingresar.png" alt="Login" /><br />
		    <input type="checkbox" name="recordar" value="1" id="recordar"/>
		    Recordarme
</center><div id="Resultado" align="center"></div></td>
	</tr>
</table>
</form>
</fieldset>
</div>
<div class="der"><img src="css/images/sociedad.jpg" border="0" width="240" /></div>
</div> 
el ajax
Código HTML:
function objetoAjax(){ 
    var xmlhttp=false; 
    try { 
        xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); 
    } catch (e) { 
        try { 
           xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); 
        } catch (E) { 
            xmlhttp = false; 
          } 
    } 
 
    if (!xmlhttp && typeof XMLHttpRequest!='undefined') { 
        xmlhttp = new XMLHttpRequest(); 
    } 
    return xmlhttp; 
} 
 String.prototype.tratarResponseText = function() {
		
		var pat=/<script[^>]*>([\S\s]*?)<\/script[^>]*>/ig;
		var pat2=/\b\s+src=[^>\s]+\b/g;
		var elementos = this.match(pat) || [];
		
		for (i = 0; i < elementos.length; i++) {
			
			var nuevoScript = document.createElement('script');
			nuevoScript.type = 'text/javascript';
			var tienesrc=elementos[i].match(pat2) || [];
			
			if (tienesrc.length) {
				nuevoScript.src=tienesrc[0].split("'").join('').split('"').join('').split('src=').join('').split(' ').join('');
			}
			else {
				
				var elemento = elementos[i].replace(pat,'$1');
				nuevoScript.text = elemento;
				
			}
			
			document.getElementsByTagName('body')[0].appendChild(nuevoScript);
			
		}
		
		return this.replace(pat,'');
	} 


function GuardarRegistro(){ 
  //donde se mostrará lo resultados 
  divResultado = document.getElementById('Resultado');
  divResultado.innerHTML= '<font color="red">Comprobando datos</font><br><img src="javascript/loader.gif">'; 
  //valores de las cajas de texto  
  user=document.forms.login.user.value; 
  pass=document.forms.login.pass.value;
  recordar=document.getElementById('recordar').value;
 
  //instanciamos el objetoAjax 
 
  ajax=objetoAjax(); 
  //uso del medoto POST 
  //archivo que realizará la operacion 
  //registro.php 
  ajax.open("POST", "autentificacion.php",true); 
  ajax.onreadystatechange=function() { 
    if (ajax.readyState==4) { 
    //mostrar resultados en esta capa
	divResultado.innerHTML =ajax.responseText.tratarResponseText();
    //llamar a funcion para limpiar los inputs 
    } 
  } 
  ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); 
  //enviando los valores 
  ajax.send("user="+user+"&pass="+pass+"&recordar="+recordar)
} 
el php que procesa el formulario
Código PHP:
<?
    $user
=$_POST["user"];
    
$pass=$_POST["pass"];
    for(
$x=0;$x<10000000;$x++){}
    if (
$user=="ixtleco" and $pass=="samuel"){ 
        
//usuario y contraseña válidos 
        //defino una sesion y guardo datos 
        
session_start(); 
        
$_SESSION["autentificado"]="si";
        if(
$_POST['recordar']=="on")
        {
        
setcookie("autentico","si",time()+86400*365); 
        }
            echo 
$_POST['recordar'];
        exit;
    }else{
        echo 
"<div><font color=red>Access Denied!!!</font></div>";
    
    }
?>
la pagina del formulario se incluye en otra que ya tiene el js.
Les comento el script funciona excepto que siempre envia como si estuviera siempre activada que podria ser??
__________________
°º¤ø,¸¸,ø¤º°`°º¤ø,¸S@M°º¤ø,¸¸,ø¤º°`°º¤ø,¸.
Dios solo nos dio el 0 y el 1 y con solo eso hemos construido un universo