Foros del Web » Programando para Internet » Javascript »

no me entra al ciclo if (ajax.readyState==1) ni ==4

Estas en el tema de no me entra al ciclo if (ajax.readyState==1) ni ==4 en el foro de Javascript en Foros del Web. Hola a todos quisier comentarles de mi siguiente inconveniente, tengo en una carpeta 3 archivos: funciones.php, registro.html y ajaxBD.js y no me quiere buscar el ...
  #1 (permalink)  
Antiguo 25/01/2013, 10:18
 
Fecha de Ingreso: diciembre-2012
Mensajes: 249
Antigüedad: 11 años, 4 meses
Puntos: 2
no me entra al ciclo if (ajax.readyState==1) ni ==4

Hola a todos quisier comentarles de mi siguiente inconveniente, tengo en una carpeta 3 archivos: funciones.php, registro.html y ajaxBD.js y no me quiere buscar el usuario que necesito en mi BD les agradeceria una colaboracion porque no veo en que me estoy equivocando

aca les dejo el codigo:
------------------------------------------------------------------------------------
funciones.php

<?php
//session_start();

//conexion con la bd
$servidor ="";
$username ="";
$password ="";
$database ="";


$con = mysql_connect($servidor, $username, $password) or die("Problema al conectar con la BD");
mysql_select_db($database, $con)or die("Problema con la BD");

//variables



//if (isset($_POST['redocumento']) && !empty ($_POST['redocumento']) && isset($_POST['reexpedicion']) //&& !empty($_POST['reexpedicion'])){

$tabla= 'usuarios';
$campo1= 'Documento';
$campo2= 'Expedicion';
$redocumento =$_POST['redocumento'];
//$dato2 =$_POST["reexpedicion"];

//Agregar datos a una tabla

function guardarUsuario($tabla, $campo1, $campo2, $dato1, $dato2) {
$query = "INSERT INTO " . $tabla . " (" . $campo1 . "," . $campo2 . ") VALUES('{$dato1}' , '{$dato2}')";
$result = mysql_query($query);
if($result){
echo '<script type="text/javascript">alert("Usuario registrado correctamentee");</script>';
} else{
echo '<script type="text/javascript">alert("Error al registrar el usuario");</script>';
}
}


// function buscarUsuario($dato1)
// {

$query = "SELECT * FROM " . $tabla . " WHERE Documento LIKE '%$redocumento%'";
$result = mysql_query($query);
//muestra los datos consultados
echo "<p>Datos:</p> \n";
while($row = mysql_fetch_array($result)){
echo "<p>".$row['Documento']." - ".$row['Expedicion']."</p> \n";
}
//}







//}


?>

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

ajaxBD.js

function Ajax(){
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;
}

function buscarUsuario()
{
resultado = document.mostrando;
redocumento = document.formulario.documento.value;
reexpedicion = document.formulario.expedicion.value;
alert(redocumento);
var ajax = Ajax();
ajax.open("POST", "bases.php",true);
ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
alert('va a entrar a buscar');
ajax.onreadystatechange = buscar();
alert('paso onreadystatechante=function()');
ajax.send("redocumento="+redocumento+"&reexpedicio n="+reexpedicion);
alert(ajax.send);
}

function buscar()
{ alert('entro al metodo buscar');
if (ajax.readyState==1){
alert('espere');
}
else
{alert('espere..');}
if (ajax.readyState==4)
{
resultado.innerHTML=ajax.responseText;
}


}

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
registro.html

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Documento sin título</title>
<style type="text/css">

</style>
</head>


<body>
<div id="mostrando" >
aca va el contenido
</div>


<div id="DivDocumento" >
<form action="" method="post" id="formulario" name="formulario" >
<fieldset>

<label for="documento">N&uacutemero Documento</label> <input name="documento" type="text" size="30" maxlength="30" tabindex="1">
<label for="expedicion">Lugar de Expedici&oacute;n</label> <input name="expedicion" type="text" size="30"maxlength="30" tabindex="2">

<input type="button" value="Enviar" id="guardar" onclick="guardarUsuario()" />
<input type="submit" value="Buscar" onClick="buscarUsuario()">

</div>
<script src="ajaxBD.js" type="text/javascript"> </script>
</body>
</html>
  #2 (permalink)  
Antiguo 25/01/2013, 10:29
Avatar de jonni09lo
Colaborador
 
Fecha de Ingreso: septiembre-2011
Ubicación: Estigia
Mensajes: 1.471
Antigüedad: 12 años, 7 meses
Puntos: 397
Respuesta: no me entra al ciclo if (ajax.readyState==1) ni ==4

Primero que todo usa el hightlight del foro, se esta hablando de no contestar mensajes que no cumplan con este requisito

Segundo en una misma pagina estas haciendo un insert y un search... o es lo uno o es lo otro, no se porque comentaste las lineas pero por lo que veo ese es uno de los problemas

Tercero las funciones de mysql_* estan ya obsoletas te recomiendo que empieces a usar PDO o mysqli_*

Saludos
__________________
Haz preguntas inteligentes-Como ser Hacker
No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta.
  #3 (permalink)  
Antiguo 25/01/2013, 15:05
 
Fecha de Ingreso: diciembre-2012
Mensajes: 249
Antigüedad: 11 años, 4 meses
Puntos: 2
Respuesta: no me entra al ciclo if (ajax.readyState==1) ni ==4

ok pero quieres decir que debo crear un archivo para cadafuncion con la BD es decir: uno para eliminar? uno para guardar?. o como puedo organizarme mejor sin necesidad de crear tantos archivos
  #4 (permalink)  
Antiguo 25/01/2013, 16:06
Avatar de jonni09lo
Colaborador
 
Fecha de Ingreso: septiembre-2011
Ubicación: Estigia
Mensajes: 1.471
Antigüedad: 12 años, 7 meses
Puntos: 397
Respuesta: no me entra al ciclo if (ajax.readyState==1) ni ==4

Si vas a trabajar con php orientado a objetos, debes usar una clase instanciarla y llamar al metodo correspondiente, si vas a trabajar en el mismo archivo alli pueden estar todas tus funciones

En cualquiera de los dos casos debes de enviar un parámetro por la url para saber que acción vas a realizar y saber así que función o método usar

Saludos
__________________
Haz preguntas inteligentes-Como ser Hacker
No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta.
  #5 (permalink)  
Antiguo 29/01/2013, 21:09
 
Fecha de Ingreso: diciembre-2012
Mensajes: 249
Antigüedad: 11 años, 4 meses
Puntos: 2
Respuesta: no me entra al ciclo if (ajax.readyState==1) ni ==4

vale muchisimas gracias!!! ya me siento mas orientada

Etiquetas: ajax, entra, formulario, funcion, html, input, js, php, variables
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:30.