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

Soy novato

Estas en el tema de Soy novato en el foro de Frameworks JS en Foros del Web. Saludos, recién estoy experimentando con Ajax y pues me toco algo con base de datos, por lo que estube leyendo no es complicado, pero no ...
  #1 (permalink)  
Antiguo 16/04/2007, 21:04
 
Fecha de Ingreso: mayo-2003
Ubicación: Lima
Mensajes: 967
Antigüedad: 21 años, 7 meses
Puntos: 8
Soy novato

Saludos, recién estoy experimentando con Ajax y pues me toco algo con base de datos, por lo que estube leyendo no es complicado, pero no entiendo pq lo que estoy haciendo no me sale.

Aqui les pongo los códigos a ver si me dan una manita.

(Los saque de un ejemplo que vi por ahi, adaptandolo a lo que necesito).
Código PHP:
//Aqui esta la parte donde tomo los valores de mi php donde esta el fomulario.
var input=document.getElementById("nombre");
var 
boton=document.getElementById("disponibilidad");// Boton presionado
var valor=input.value;
//..........
//..........
//Aqui la parte donde envio el valor tomado al archivo php
//que me verifica la existencia de dicho valor en la base de datos
var ajax=nuevoAjax();
ajax.open("POST""../php-functions/functions.func.php"true);
ajax.setRequestHeader("Content-Type""application/x-www-form-urlencoded");
ajax.send(valor);
        
ajax.onreadystatechange=function() {
    if (
ajax.readyState==4)
    {
        
// Habilito nuevamente botones e inputs
        
input.value=valor;
        
boton.disabled=falseinput.disabled=false;
        
// Muestro el mensaje enviado desde el servidor
        
divMensaje.innerHTML=ajax.responseText;
    }

Esta es la parte del js que envia mi dato al archivo php donde se procesara y se vera si el dato que ingrese existe o no. Todo esto lo entinedo bien y si sale, el problema creoq ue es en el archivo php.

Aquí les envio el archivo php
Código PHP:
function validaIngreso($valor)
{
    if(
eregi("^[a-zA-Z0-9]{4,10}$"$valor)) return TRUE;
    else return 
FALSE;
}

function 
verificaExistencia($usuario)
{
    
$consulta=mysql_query("SELECT us_code FROM usuarios WHERE us_code = '$usuario'") or die(mysql_error());
    
$registro=mysql_fetch_row($consulta);
    
    if(!empty(
$registro)) return TRUE;
    else return 
FALSE;
}

if (isset(
$_POST["nombre"])) {
    
$valor trim($_POST["nombre"]);
    
    if (
validaIngreso($valor)) {
        if (
verificaExistencia($valor)) {
            echo 
"Este nombre de usuario ya existe";
        }
        else {
            echo 
"Nombre de usuario disponible";
        }
    }
    else {
        echo 
"Valor no valido " $valor;
    }

Al parecer no recibe la variable nombre enviada desde el .js, hice una prueba de imprimir el valor que supuestamente se envía desde el .js y no imprime nada.

Por favor (de rodillas) espero que me puedan ayudar, quizas sea algo que se me paso por alto y no puedo darme cuenta.

Gracias de antemano.
__________________
El aprendiz.
  #2 (permalink)  
Antiguo 17/04/2007, 03:36
 
Fecha de Ingreso: mayo-2006
Ubicación: Zaragoza
Mensajes: 54
Antigüedad: 18 años, 7 meses
Puntos: 0
Re: Soy novato

Hola juandedios,

A primera vista se me ocurre que en la llamada sólo le envías como parámetro el valor pero no el nombre del parámetro.

Prueba con esto:

ajax.send("nombre="+valor);

Saludos
__________________
Mi weblog
Jobsket
  #3 (permalink)  
Antiguo 17/04/2007, 10:32
 
Fecha de Ingreso: mayo-2003
Ubicación: Lima
Mensajes: 967
Antigüedad: 21 años, 7 meses
Puntos: 8
Re: Soy novato

Muchas gracias, eso era lo que faltaba.
__________________
El aprendiz.
  #4 (permalink)  
Antiguo 19/04/2007, 19:28
Avatar de isch  
Fecha de Ingreso: febrero-2007
Ubicación: En mi casa
Mensajes: 36
Antigüedad: 17 años, 9 meses
Puntos: 0
Re: Soy novato

ok, espero que tu problema se haya resuelto
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 22:31.