Foros del Web » Programando para Internet » Javascript » Frameworks JS »

como hacer esto con funcion ajax???

Estas en el tema de como hacer esto con funcion ajax??? en el foro de Frameworks JS en Foros del Web. Hola amigos estoy estancado con mi problema q es el siguiente: tengo estas tablas en mi bd: NIÑO, PADRE, FAMILIA Y FAMILIA_X_HIJOS; mi problema es ...
  #1 (permalink)  
Antiguo 30/03/2009, 22:28
 
Fecha de Ingreso: diciembre-2007
Mensajes: 385
Antigüedad: 16 años, 4 meses
Puntos: 0
como hacer esto con funcion ajax???

Hola amigos estoy estancado con mi problema q es el siguiente:

tengo estas tablas en mi bd:
NIÑO, PADRE, FAMILIA Y FAMILIA_X_HIJOS; mi problema es q al ingresar a un padre responsable de un niño, primero compruebo con una funcion ajax q el DNI del padre no este en la tabla padre y en la tabla familia, esto lo hago bien ya q la funcion ajax me va diciendo en el momento mediante un mensaje en pantalla si existe o no el padre en la bd, pero como hacer para cuando el padre ya exista en las tablas padre y familia para solo ingresar el dni del padre del padre junto al dni del niño en la tabla familia_hijos?? ya q en la tabla familia por hijos tengo el dni del padre responsable y el dni del niño q es carga del padre, mi pregunta es como lo puedo hacer para q cuando ya alla sido ingresado el padre anteriormente en la bd solo ingresar el dni del padre junto al dni del hijo q es carga de este??

pq en la funcion ajax solo tengo la consulta q comprueba si el padre q se esta ingresando ya existe o no en la bd, pero lo q kiero es q una vez q me compruebe q el padre ya existe en la bd me ingrese de inmediato el dni del padre junto al dni del niño en la tabla familia_x_hijos, sin permitirle al usuario q siga ingresando los demas datos del padre, como puedo hacer esto? con otra funcion ajax???? o como podria hacerlo??? ya q no kiero q el usuario ingrese todos los datos del padre para q se haga la conprobacion al darle al boton guardar (submit) como puedo hacer para q apenas se verifique q el dni del padre existe en la bd se ingrese el dni del padre y del niño en la tabla familia_x_hijos, y luego de este insert se pase de inmediato al otro formulario??.... espero se entienda mi problema ..... porfavor ruego por su ayuda amigos.... de antemano gracias .... bye

PD: estoy trabajando con php 5 y postgre 8.2
  #2 (permalink)  
Antiguo 30/03/2009, 22:35
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años
Puntos: 834
Respuesta: como hacer esto con funcion ajax???

Creo que deberías simplificar tu explicación. Cuál es tu duda en concreto?: Cómo obtener un dato de la base de datos vía AJAX?, cómo guardar un dato en la base de datos vía AJAX?, con qué evento disparar las consultas vía AJAX? Porque el resto de la explicación sólo confunde.
  #3 (permalink)  
Antiguo 30/03/2009, 22:57
 
Fecha de Ingreso: diciembre-2007
Mensajes: 385
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: como hacer esto con funcion ajax???

Hola panino mi consulta en concreto es como guardar los datos pq la funcion para comprobar si existe el id del padre ya la tengo, la funcion q tengo me va mostrando de inmediato en pantalla si esta o no ese id, y al momento de q ya comprueba q existe ya ese id en la bd, necesito de inmediato ingresar ese id a otra tabla, sin permitir q el usuario siga rellenando el formulario (esta tabla es la q me permite relacionar otras dos tablas) necesito hacer dicho insert y una vez q se haga el insert correctamente derivar al usuario a la siguiente pagina. como puedo hacer esto en ajax??? como hacer el insert despues q me verifike q de verdad exista el id del padre en la bd y luego de realizar este insert derivar al usuario a la siguiente pagina??? como hago esto en ajax??? porfavor amigos ruego por su ayuda de antemano gracias.... bye...

y otra cosa.... como disparar las consultas a la base de datos, ya q la funcion q me comprueba si existe o no el usuario la tengo con onkeyup pero como disparo el insert y la derivacion del usuario a la otra pagina despues del insert??? sorry mi ignorancia recien comienzo con ajax.... ruego su comprension y su ayuda/guia de antemano gracias..... bye

Última edición por r0xdrig0; 30/03/2009 a las 23:08
  #4 (permalink)  
Antiguo 30/03/2009, 23:12
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años
Puntos: 834
Respuesta: como hacer esto con funcion ajax???

Un ejemplo sencillo sería este. No tiene consultas a la base de datos, pero da una idea de cómo usar un calback que haga una cosa u otra en función a la respuesta del servidor:
Código PHP:
<?php 
if(isset($_POST['uno'])){
    if(
$_POST['uno']=='existe'){
        echo 
'existe';
    }else{
        echo 
'no existe';
    }
    exit;
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>ejemplo</title>
<script>
function http(){
    if(typeof window.XMLHttpRequest!='undefined'){
        return new XMLHttpRequest();    
    }else{
        try{
            return new ActiveXObject('Microsoft.XMLHTTP');
        }catch(e){
            alert('Su navegador no soporta AJAX');
            return false;
        }    
    }    
}
function request(url,callback,params){
    var H=new http();
    if(!H)return;
    H.open('post',url+'?'+Math.random(),true);
    H.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
    H.onreadystatechange=function(){
        if(H.readyState==4){
            if(callback)
                callback(H.responseText);
            H.onreadystatechange=function(){}
            H.abort();
            H=null;
        }
    }
    var p='';
    for(var i in params){
        p+='&'+i+'='+escape(params[i]);    
    }
    H.send(p);

function verificar(r){
    if(r=='existe'){
        alert('existe');
    }else{
        window.location='otroLado.htm';
    }
}
</script>
</head>

<body>
<form id="form1" name="form1" method="post" action="">
  <input type="button" name="Submit" value="probar existe" onclick="request('',verificar,{'uno':'existe'})" />
  <input type="button" name="Submit2" value="probar no existe" onclick="request('',verificar,{'uno':'no existe'})" />
</form>
</body>
</html>
  #5 (permalink)  
Antiguo 31/03/2009, 13:39
 
Fecha de Ingreso: diciembre-2007
Mensajes: 385
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: como hacer esto con funcion ajax???

Hola panino, no entendi muy bien tu ejemplo de ajax ya q no me keda claro en q parte se comunica javascript con el codigo php para hacer la consulta la bd, la funcion q tengo yo me comprueba si existe o no el id del padre en la bd y me muestra un mensaje indicando al usuario si existe o no el id, la funcion q tengo es esta:
Código PHP:

FUNCION JAVASCRIPT
:

function 
comprobar_rut_padre(rut)   
 {  
   var 
url 'http://'+location.host+'/PDA/ajax_comprobar_rut_padre.php';  
   var 
pars='rut_padre=rut';  
   var 
myAjax = new Ajax.Updater'mensaje_comprobar_rut'url, { method'get'parameterspars});  
    
 }

y mi archivo php donde hago la consulta a la bd es este:

include_once(
"./include_php/conexion.php"); 
 include_once(
"./include_php/funciones.php"); 
 
$fecha date("Y/m/d");
 
$_SESSION['ide_nino'];
 
 
 
     
$conn conexion();
     
$_SESSION['rut']=$_REQUEST['rut_padre']; 
     
$texto="";
     
$ingresarnull;
     
$sql="SELECT rut_padre, id_familia FROM familia WHERE rut_padre='".$_SESSION['rut']."'";  
     
$res=pg_query($conn$sql);  
     
$total=pg_num_rows($res);  
     
//select rut_padre, id_familia from familia where '15.529.140-0'=rut_padre
     
     
if($total>0)  
     {   
       
// El usuario existe en la Base de Datos  
       
$texto="Este Padre ya fue Ingresado";
       echo 
$texto;
               
     }  
     else  
     {  
       
       
       
// Ese nick esta libre  
           
$texto="Ud. Esta Ingresando a un Nuevo Responsable de Familia.";
           echo 
$texto;  
      
     }  

el input a comprobar es este y lo tengo con onkeyup:

<
input name="rut_padre" id="rut_padre" class="required" onKeyUp="comprobar_rut_padre(this.value)" title="Campo Obligatorio"/>
                           <
span id="mensaje_comprobar_rut" class="mensaje" 
ahora mi pregunta es; en base a esta funcion q tengo como puedo /hacer/modificar esta funcion para q una vez q me compruebe q el id dell padre ya existe en la base de datos ingrese el id del padre a la tabla q necesito y luego de esto me muestre un alert por pantalla diciendome q el padre ya existe y al hacer click en aceptar me envie a la siguiente pagina???..... porfavor ruego por su ayuda ya q solo me falta terminar esta parte para acabar con mi proyecto... de antemano graacias..... bye
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 09:16.