Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/04/2013, 01:45
Avatar de derleguan
derleguan
 
Fecha de Ingreso: abril-2012
Mensajes: 26
Antigüedad: 12 años
Puntos: 1
problema al validar datos con javascrip usando ajax php y myql

hola gente del foro tengo una prejunta sobre html, ajax, javascript y php

la cosa es que quiero editar un elemento de la base de dato, y quiero que al realizar sumit
se valide si los datos ya existan con anterioridad, los datos a manejar son los de un usuario, el nombre del usuario y su tipo los cuales son cargado por medio de php con eso todo bien, al hacer sumit llamo a una función de javascrip verifico que seleccione una opcion
validad de un objeto <select> realizo una llamada ajax con javascript la cual me devuelve los datos correctamente, los cuales son true o false los cuales son para ver si los datos existen o no para no duplicar basicamente el nombre de usuario, pero nose como rescatar los datos para usarlos,y mandar una aler si ya existen los datos y que ingrese otro, adjunto mi codigo

Código PHP:
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script src="jquery.min.js"></script>
<link rel="stylesheet" href="style3.css">
<script>
    function validarfrom(valor){
         if(document.forms["frm1"]["usuario"].value==0){//valido que el input tipo select no sea el valor opcion
             alert("Selecione a un tipo de usuario");
             return false;
         }else{
             dato = consultar(valor);
//aca mi problema no resivo los datos y esta claro por que no llamo ala funcion procesar eventos la cual devuelve los datos y los cuales nose como rescatar para usar los
             return false;
         }        
    }
    //aplico ajax con jquery 
    function consultar(valor){
        $.get("validar_usuario.php",{nombre:valor},procesarEventos); 
    }
    
    function procesarEventos(datos){
            return datos;//aca optengo el valor a recatar y me lo muestra bien y todo pero nose como devolverlo o rescatarlo
    }
</script>
<title>Usuario</title>
</head>

<body>
    <section id="contenedor">
        <h1>Editar usuario</h1>
        <?php
            
require( "variables.php" );
            echo 
"<form name='frm1' action='edit_user.php' onsubmit='return validarfrom(nombre.value)' method='post'>";//al hacer sumit llamo a la funcion 
            
echo "<ul>";
            
$h mysql_connect$host$admin_name$admin_pass ) or die( "ERROR al conectar al servidor." );
            if( isset( 
$h ) ){
                        
$db mysql_select_db$db_name$h ) or die( "ERROR al abrir base de datos." );
                        if( isset( 
$db ) ){
                            
$sql "SELECT * FROM usuario WHERE nombre='".$_GET["usuario"]."'";
                            
$res mysql_query$sql$h ) or die( "ERROR al ejecutar instruccion SQL.");
                            while( 
$fila mysql_fetch_row$res ) ){
                                
session_start();
                                
$_SESSION['id_usuario']=$fila[0]; 
                                echo 
"<li><label >Nombre:</label></li>";
                                echo 
"<li><input type='text' name='nombre' required value=\"".$_GET['usuario']."\" /></li>";
                                if(
$fila[3]==1){
                                    echo 
"<li><label >Tipo de usuario</label></li>";
                                    echo 
"<li><select name='usuario' required >"
                                    echo 
"<option value='0'>Elegir una opciones</option>";
                                    echo 
"<option value='1' SELECTED>Adminitrador</option>";
                                      echo 
"<option value='2'>Garzon</option>";
                                      echo 
"<option value='3'>Cocinero</option>";
                                    echo 
"</select></li>";
                                }elseif(
$fila[3]==2){
                                    echo 
"<li><label >Tipo de usuario</label></li>";
                                    echo 
"<li><select name='usuario' required >"
                                    echo 
"<option value='0'>Elegir una opciones</option>";
                                    echo 
"<option value='1'>Adminitrador</option>";
                                      echo 
"<option value='2' SELECTED>Garzon</option>";
                                      echo 
"<option value='3'>Cocinero</option>";
                                    echo 
"</select></li>";
                                }elseif(
$fila[3]==3){
                                    echo 
"<li><label >Tipo de usuario</label></li>";
                                    echo 
"<li><select name='usuario' required >"
                                    echo 
"<option value='0'>Elegir una opciones</option>";
                                    echo 
"<option value='1'>Adminitrador</option>";
                                      echo 
"<option value='2'>Garzon</option>";
                                      echo 
"<option value='3'SELECTED>Cocinero</option>";
                                    echo 
"</select></li>";
                                }

                                echo 
"<li><input type='submit' name='submit' value='guardar'><a href='ver_usuario.php'>volver</a></li>";
                            }
                            
                        }else{
                                echo 
"<label>Se produjo un error no se pudo ingresar el categoria intentelo nuevamente</label>";
                        }
                        
                    }else{
                        echo 
"<label>Se produjo un error no se pudo ingresar el categpria intentelo nuevamente</label>";
                    }
                    
mysql_close($h);
        
            
            
            echo 
"</ul>";
            echo 
"</form>";
        
?>
    </section>

</body>
</html>
aca el archivo que verifica si los datos existen o no

Código PHP:
<?php
    header
('Content-Type: text/html; charset=ISO-8859-1');
    require( 
"variables.php" );
    
$h mysql_connect$host$admin_name$admin_pass ) or die( "ERROR al conectar al servidor." );
                if( isset( 
$h ) ){
                    
$db mysql_select_db$db_name$h ) or die( "ERROR al abrir base de datos." );
                    if( isset( 
$db ) ){
                        
$sql " select * from usuario where nombre='".$_GET['nombre']."'";
                        
$res mysql_query$sql$h ) or die( "ERROR al ejecutar instruccion SQL." );
                        if(
mysql_num_rows($res)==0)
                            echo 
"false";
                        else
                            echo 
"true";
                    }    
                }     
                
mysql_close($h);
?>

en el codigo deje unos comentarios basado al problema.
bueno de antemanos gracia por su ayuda le di varias vuelta al asunto de como realizarlo
pero no llege a puerto trate usando variables globales, pense en hacer un div oculto y guardarlo ahi pero no supe como