les muestro que tengo:
registro.php // aqui solicito la informacion que identifica el registro y llamo a una funcion en javascript
Código HTML:
<table class="table-bordered" width="100%" cellspacing="3" cellpadding="3"> <tr> <td colspan="2" ><div align="center">Registro de Contribuyentes</div></td> </tr> <tr> <td width="474" ><select name="tipo" id="tipo" class="select_rif"> <option selected value="J">J</option> <option value="V">V</option> <option value="G">G</option> <option value="P">P</option> <option value="E">E</option> </select> <input name="rif" type="text" id="rif" onKeyPress="return teclear(event,3)" maxlength="9" placeholder="Rif:120001113"></td> <td width="443" ><div align="left"><input type="button" name="button" id="button" value="Busca Contribuyente" onClick='carga_contrato(this.rif)'></div></td> </tr> </table>
Código:
div_oculto contiene todos los input text function carga_contrato(rif_contri) { var ajax=nuevoAjax(); var selectOrigen=document.getElementById('tipo'); // Obtengo la opcion que el usuario selecciono var opcionSeleccionada=selectOrigen.options[selectOrigen.selectedIndex].value; var rif=opcionSeleccionada+document.getElementById('rif').value;//contruyo el rif // Creo el nuevo objeto AJAX y envio al servidor el ID del select a cargar y la opcion seleccionada del select origen var ajax=nuevoAjax(); ajax.open("GET", "funcion_ajax.php?rif="+rif+"&sw=1", true);// va uno en sw por que el uno sera para resolver esta funcion de verificar contribuyente ajax.onreadystatechange=function() { if (ajax.readyState==4) { var resultado=ajax.responseText; if(resultado=="1"){ var ajax2=nuevoAjax(); ajax2.open("GET", "funcion_ajax.php?rif="+rif+"&sw=2", true);//paso 2 por esta me retornara los datos del contribuyente y su representante legal ajax2.onreadystatechange=function() { div_oculto=document.getElementById('div_oculto'); div_oculto.style.visibility = "visible"; div_oculto.innerHTML=ajax2.responseText; } ajax2.send(null); }else{ alert("El contribuyente no existe"); } } } ajax.send(null); }
el php funcion_ajax es este
Código PHP:
<?php
session_start();
if ($_POST or $_GET or isset( $_SERVER['HTTP_REFERER'] )) {
$refer = strtolower( $_SERVER['HTTP_REFERER'] );
if(substr_count($refer, 'localhost/sia')==1){
if($_GET['sw']=="1")//registro de contrato
{
$rif_ci=$_GET['rif'];
include_once 'conexion.php'; conecta_sia();
$sql="select rif_ci from rif where rif_ci='$rif_ci'";
$consulta=mysql_query($sql) or die(mysql_error());
if($res=mysql_fetch_object($consulta))
{ echo "1"; }else{ echo "0"; }
cerrar_conexion();
}else{
if($_GET['sw']=="2")
{
// voy a devolver los campos de contribuyente y representante legal, nombre,cedula,telefono
$rif_ci=$_GET['rif'];
include_once 'conexion.php'; conecta_sia();
$sql="select nombre,rif_ci,telefono,nombre_representante,cedula_representante,telefono_rep from rif where rif_ci='$rif_ci'";
$consulta=mysql_query($sql) or die(mysql_error());
if($res=mysql_fetch_object($consulta))
{
// pinto todos los edit
// Comienzo a imprimir el select
$nombre=$res->nombre;
echo "<input name='nombre_contribuyente' type='text' class='edit_nombre' id='nombre_contribuyente' value='".$nombre."' readonly='readonly' placeholder='Nombre o Razon Social' >";
echo "<input name='rif_reg' type='text' id='rif_reg' readonly='readonly' value='".$res->rif_ci."' >";
echo "<input name='telefono_contribuyente' type='text' id='telefono_contribuyente' readonly='readonly' placeholder='Teléfono' value='".$res->telefono."' >";
echo "<input name='nombre_rep' type='text' class='edit_nombre' id='nombre_rep' readonly='readonly' placeholder='Nombre y Apellido' value='".$res->nombre_representante."' >";
echo "<input name='cedula_rep' type='text' id='cedula_rep' readonly='readonly' placeholder='Cédula:17111222' value='".$res->cedula_representante."' >";
echo "<input name='telefono_rep' type='text' id='telefono_rep' readonly='readonly' placeholder='Teléfono:04160001122' value='".$res->telefono_rep."' >";
}else{
echo "0";
}
cerrar_conexion();
}
}
}else{
echo ("<script language='javascript'>
alert('Esta pagina es privada, no tiene los permisos necesarios')
var pagina='../index.php'
location.href=pagina</script>");
}
}else{
echo ("<script language='javascript'>
alert('Esta pagina es privada, no tiene los permisos necesarios')
var pagina='../index.php'
location.href=pagina</script>");
} ?>
si hay algo en el ajax que optimizar se agradece todo lo que e logrado a sido viendo ejemplos y tratando de imitar el funcionamiento no e trabajado con ajax antes.