Php para llamada de ajax

Iniciado por madri09, 21 Octubre 2012, 13:53 PM

0 Miembros y 1 Visitante están viendo este tema.

madri09

Hola, necesito que el archivo valida1.php reconozca la llamada del archivo ajax y haga el  alert('el teléfono ya existe');.

valida1.php

Código (php) [Seleccionar]

<?php
require_once('Connections/conexion.php');

$telefono $_GET['telefono'];

$query="SELECT telefono FROM usuarios WHERE telefono='$telefono'";

$result mysql_query($query);

?>



js

Código (javascript) [Seleccionar]

function TelefonoExiste(telefono, _callback) {

   var ajax=nuevoAjax();

   ajax.open("GET", "valida1.php?telefono=" + encodeURIComponent(telefono), true);

   ajax.onreadystatechange=function() {

       if ((ajax.readyState==4) && (ajax.status==200)){

           //ejecutamos _callback como si fuese una función, pasandole el parámetro

           _callback(ajax.responseText);

       }

   }

   ajax.send(null);

}



function GuardaFormulario() {

   //usemos mejor las CoLECCIONES, y variables, así ahorramos codigo y lo hace fácil de mantener

   var _telefono = document.forms['form1'].elements['telefono'];



   if (_telefono.value.length == 0){

       alert("Insertar el Teléfono");

       _telefono.focus();

       return 0;

   }

   

   //lamamos a AJAX:

   TelefonoExiste(_telefono.value, function(resp) {


       //evaluamos la respuesta del server, tengase en cuenta que responseText devuelve un string, por lo tanto hay que parsear a entero si se evalúa un numero:

       if (parseInt(resp) >= 1) {

           //aqui seria bueno un mensaje

           alert('el teléfono ya existe');

           _telefono.focus();

       } else {

           //evaluar si se envía el form desde aquí, o se usa ajax para enviarlo.

           alert("El formulario se envio con exito!");

           document.forms['form1'].submit();

       }

   });

   //como ajax es asincrono, JS NO se detendrá en la llamada anterior, por lo tando hay que retornar false o 0 como lo tienes:

   return 0;

}




Gracias