Hola!

Registrándote como bakuno podrás publicar, compartir y comunicarte en privado con otros bakuos :D

Regístrame ya!

¿Como resuelvo este problema con ajax y php?

nemesis88

Bovino de alcurnia
Desde
1 Feb 2009
Mensajes
2.052
hola amigos bakunos, hace poco realice un formulario que me buscaba todos mis pacientes comenzado por sus nombres a base de ajax, hasta ese momento todo me salio bien, pero ahora quiero que cuando no me encuentre ningun paciente, en el div aparezca un link que me envie a un formulario llamado Registrar, como en la imagen siguiente.

2sinoexistepaciente.jpg

Mas o menos tengo una idea de como hacerlo pero necesito una ayuda para hacer esa tarea, a continuacion les presento todo lo que hice hasta el momento :

1siexistepaciente.jpg


base de datos :

Código:
create database clinica;
use clinica;

CREATE TABLE Cajero (
       Cod_caj              char(7) NOT NULL,
       Nombre               varchar(50) NOT NULL,
       Apellido             varchar(50) NOT NULL,
       Direccion            varchar(60) NOT NULL,
       Telefono             int NOT NULL,
       DNI                  int NOT NULL,
       Fecha_ingreso        datetime NOT NULL,
       Email                varchar(60) NOT NULL,
       Cod_ubi              char(7) NULL,
       Cod_pa               char(7) NULL,
       Cod_turno            char(7) NULL
);


ALTER TABLE Cajero
       ADD PRIMARY KEY NONCLUSTERED (Cod_caj);


CREATE TABLE Citas (
       Cod_cita             char(7) NULL,
       Fecha                datetime NOT NULL,
       Cod_turno            char(7) NULL,
       Cod_caj              char(7) NULL,
       Cod_pa               char(7) NULL,
       Cod_recep            char(7) NULL,
       Cod_doc              char(7) NULL,
       Cod_tipo             char(7) NULL
);


ALTER TABLE Citas
       ADD PRIMARY KEY NONCLUSTERED (Cod_cita);


CREATE TABLE Doctor (
       Cod_doc              char(7) NOT NULL,
       Cod_espe             char(7) NOT NULL,
       Nombre               varchar(50) NOT NULL,
       Apellido             varchar(50) NOT NULL,
       Direccion            varchar(60) NOT NULL,
       Telefono             int NOT NULL,
       DNI                  int NOT NULL,
       Fecha_ingreso        datetime NOT NULL,
       Email                varchar(60) NOT NULL,
       Cod_ubi              char(7) NULL,
       Cod_turno            char(7) NULL
);


ALTER TABLE Doctor
       ADD PRIMARY KEY NONCLUSTERED (Cod_doc);


CREATE TABLE Especialidad (
       Cod_espe             char(7) NULL,
       Descripcion          varchar(20) NOT NULL
);


ALTER TABLE Especialidad
       ADD PRIMARY KEY NONCLUSTERED (Cod_espe);


CREATE TABLE Historial_Medico (
       Cod_histo            char(7) NOT NULL,
       Cod_pa               char(7) NULL,
       Cod_doc              char(7) NOT NULL,
       NomApe_paciente      varchar(30) NOT NULL,
       Fecha_nacimiento     datetime NOT NULL,
       Ocupacion            varchar(20) NOT NULL,
       Antecedentes_Medicos varchar(40) NOT NULL,
       Edad                 char(2) NOT NULL,
       Tipo_infeccion       varchar(20) NOT NULL,
       cod_sexo             char(7) NULL
);


ALTER TABLE Historial_Medico
       ADD PRIMARY KEY NONCLUSTERED (Cod_histo);


CREATE TABLE Paciente (
       Cod_pa               char(7) NULL,
       Nombres              varchar(50) NOT NULL,
       Apellidos            varchar(50) NOT NULL,
       Direccion            varchar(60) NOT NULL,
       Telefono             int NOT NULL,
       DNI                  int NOT NULL,
       Fecha_nacimiento     varchar(20) NOT NULL,
       Email                varchar(60) NOT NULL,
       Cod_ubi              char(7) NULL
);


ALTER TABLE Paciente
       ADD PRIMARY KEY NONCLUSTERED (Cod_pa);


CREATE TABLE Pago (
       Numero_operacion     char(7) NULL,
       Cod_caj              char(7) NULL,
       Fecha                datetime NOT NULL
);


ALTER TABLE Pago
       ADD PRIMARY KEY NONCLUSTERED (Numero_operacion);


CREATE TABLE Recepcionista (
       Cod_recep            char(7) NOT NULL,
       Nombre               varchar(40) NOT NULL,
       Apellido             varchar(40) NOT NULL,
       Direccion            varchar(60) NOT NULL,
       Telefono             int NOT NULL,
       DNI                  int NOT NULL,
       Fecha_ingreso        datetime NOT NULL,
       Email                varchar(60) NOT NULL,
       Cod_ubi              char(7) NULL,
       Cod_turno            char(7) NULL
);


ALTER TABLE Recepcionista
       ADD PRIMARY KEY NONCLUSTERED (Cod_recep);


CREATE TABLE Recetas (
       Cod_rec              char(7) NOT NULL,
       Cod_doc              char(7) NULL,
       Cod_pa               char(7) NULL,
       Prescripcion         varchar(40) NULL,
       Duracion_tratamiento varchar(10) NULL,
       Diagnostico          varchar(50) NULL
);


ALTER TABLE Recetas
       ADD PRIMARY KEY NONCLUSTERED (Cod_rec);


CREATE TABLE Sexo (
       cod_sexo             char(7) NOT NULL,
       Descripcion          varchar(20) NULL
);


ALTER TABLE Sexo
       ADD PRIMARY KEY NONCLUSTERED (cod_sexo);


CREATE TABLE Tipo_Cita (
       Cod_tipo             char(7) NULL,
       Nombre_Tipo          varchar(20) NULL
);


ALTER TABLE Tipo_Cita
       ADD PRIMARY KEY NONCLUSTERED (Cod_tipo);


CREATE TABLE Turno (
       Cod_turno            char(7) NULL,
       Descripcion          varchar(10) NOT NULL
);


ALTER TABLE Turno
       ADD PRIMARY KEY NONCLUSTERED (Cod_turno);


CREATE TABLE Ubigeo (
       Cod_ubi              char(7) NOT NULL,
       Departamento         varchar(30) NOT NULL,
       Provincia            varchar(30) NOT NULL,
       Distrito             varchar(30) NOT NULL
);


ALTER TABLE Ubigeo
       ADD PRIMARY KEY NONCLUSTERED (Cod_ubi);


CREATE TABLE Usuario (
       cod_usuario          char(7) NOT NULL,
       Nombre               varchar(20) NULL,
       password             varchar(20) NULL
);


ALTER TABLE Usuario
       ADD PRIMARY KEY NONCLUSTERED (cod_usuario);




insert into ubigeo values('UBI010101','lima','lima','callao');


insert into paciente values('PAC0001','luis miguel','Lopez Valerin','mz25 lt9 - canta callao',52643819,15243689,'1988-01-12','[email protected]','UBI010101');
insert into paciente values('PAC0002','luis miguel','Lopez Valerin','mz25 lt9 - canta callao',52643819,16243689,'1988-01-12','[email protected]','UBI010101');
insert into paciente values('PAC0003','luis miguel','Lopez Valerin','mz25 lt9 - canta callao',52643819,17243689,'1988-01-12','[email protected]','UBI010101');
insert into paciente values('PAC0004','jorge miguel','Antunez de Mayolo','mz25 lt9 - canta callao',52643819,18243689,'1988-01-12','[email protected]','UBI010101');
Busqueda Paciente.html

Código:
<title>Documento sin tÃtulo</title>
<script language="JavaScript" type="text/javascript" src="ajax.js"></script>
</head>

<body>
<form name="consulta" action="">
<table width="436" border="1">
  <tr>
    <td colspan="2" align="center">Busqueda Paciente</td>
  </tr>
  <tr>
    <td width="124">Apellidos y nombres</td>
    <td width="296"><input type="text" name="txtape" id="txtape" size="50"/></td>
  </tr>
  <tr>
    <td colspan="2"><div id="listar"></div></td>
  </tr>
  <tr>
    <td colspan="2" align="center"><input type="submit" name="btnbuscar" value="Buscar" onClick="MostrarConsulta('consulta.php'); return false" /></td>
  </tr>
</table>
</form>
</body>
consulta.php

Código:
<?php

$t1=$_GET['t1'];

//Configuracion de la conexion a base de datos
$bd_host = "localhost"; 
$bd_usuario = "root"; 
$bd_password = ""; 
$bd_base = "clinica"; 

$con = mysql_connect($bd_host, $bd_usuario, $bd_password); 

mysql_select_db($bd_base, $con); 

//consulta todos los empleados

$sql=mysql_query("SELECT * FROM paciente where Nombres like '%".$t1."%'",$con);

//muestra los datos consultados
echo "<table border='1' align='center'>
<tr>
<th>Codigo</th>
<th>Nombres</th>
<th>Apellidos</th>
<th>Correo</th>
<th>Distrito</th>
</tr>";
while($row = mysql_fetch_array($sql)){
    echo "<tr>";
  echo "<td>" . $row['Cod_pa'] . "</td>";
  echo "<td>" . $row['Nombres'] . "</td>";
  echo "<td>" . $row['Apellidos'] . "</td>";
  echo "<td>" . $row['Email'] . "</td>";
  echo "<td>" . $row['Cod_ubi'] . "</td>";
  echo "</tr>";
}
?>
ajax.js

Código:
function objetoAjax(){
    var xmlhttp=false;
    try {
        xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
        try {
           xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        } catch (E) {
            xmlhttp = false;
          }
    }

    if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
        xmlhttp = new XMLHttpRequest();
    }
    return xmlhttp;
}

function MostrarConsulta(){
    var t1,divResultado;
    divResultado = document.getElementById('listar');
    t1=document.getElementById('txtape').value;
    ajax=objetoAjax();
    ajax.open("GET", "consulta.php?t1="+t1,true);
    ajax.onreadystatechange=function() {
        if (ajax.readyState==4) {
            divResultado.innerHTML = ajax.responseText
        }
    }
    ajand(null)
}
porfavor ayudenem, les agradecere mucho
 
uhm, acaso nadie me puede dar con la respuesta?, hasta puse graficos
 
Compadre!!!
Chida tu explicacion, y como que te falta un poco de lógica o aprenderte algunas funciones :P
segun yo asi (Verificas cuantos resultados te trae el query, si es ninguno muestras el mensaje XD Listo):

Código:
<?php

$t1=$_GET['t1'];

//Configuracion de la conexion a base de datos
$bd_host = "localhost"; 
$bd_usuario = "root"; 
$bd_password = ""; 
$bd_base = "clinica"; 

$con = mysql_connect($bd_host, $bd_usuario, $bd_password); 

mysql_select_db($bd_base, $con); 

//consulta todos los empleados

$sql = mysql_query("SELECT * FROM paciente where Nombres like '%".$t1."%'",$con);
[B]$num_rows = mysql_num_rows($sql);

if($num_rows > 0)
{[/B]
//muestra los datos consultados
echo "<table border='1' align='center'>
<tr>
<th>Codigo</th>
<th>Nombres</th>
<th>Apellidos</th>
<th>Correo</th>
<th>Distrito</th>
</tr>";
while($row = mysql_fetch_array($sql)){
    echo "<tr>";
  echo "<td>" . $row['Cod_pa'] . "</td>";
  echo "<td>" . $row['Nombres'] . "</td>";
  echo "<td>" . $row['Apellidos'] . "</td>";
  echo "<td>" . $row['Email'] . "</td>";
  echo "<td>" . $row['Cod_ubi'] . "</td>";
  echo "</tr>";
	}
[B]}
else
	echo 'No se encontro.... bla bla bla   <a href="[COLOR="DarkOrange"]paginaregisrar.php[/COLOR]">Registra Cliente</a>';[/B]
?>

Otra cosa, cuando haces un sistema intenta poner SOLO 1 archivo de configuracion (oceace de conexión a bases de datos . Y ya lo llamas como quieras, include o require, esto para poder darle mantenimiento te será mas facil
 
Compadre!!!
Chida tu explicacion, y como que te falta un poco de lógica o aprenderte algunas funciones :P
segun yo asi (Verificas cuantos resultados te trae el query, si es ninguno muestras el mensaje XD Listo):

Código:
<?php

$t1=$_GET['t1'];

//Configuracion de la conexion a base de datos
$bd_host = "localhost"; 
$bd_usuario = "root"; 
$bd_password = ""; 
$bd_base = "clinica"; 

$con = mysql_connect($bd_host, $bd_usuario, $bd_password); 

mysql_select_db($bd_base, $con); 

//consulta todos los empleados

$sql = mysql_query("SELECT * FROM paciente where Nombres like '%".$t1."%'",$con);
[B]$num_rows = mysql_num_rows($sql);

if($num_rows > 0)
{[/B]
//muestra los datos consultados
echo "<table border='1' align='center'>
<tr>
<th>Codigo</th>
<th>Nombres</th>
<th>Apellidos</th>
<th>Correo</th>
<th>Distrito</th>
</tr>";
while($row = mysql_fetch_array($sql)){
    echo "<tr>";
  echo "<td>" . $row['Cod_pa'] . "</td>";
  echo "<td>" . $row['Nombres'] . "</td>";
  echo "<td>" . $row['Apellidos'] . "</td>";
  echo "<td>" . $row['Email'] . "</td>";
  echo "<td>" . $row['Cod_ubi'] . "</td>";
  echo "</tr>";
    }
[B]}
else
    echo 'No se encontro.... bla bla bla   <a href="[COLOR=DarkOrange]paginaregisrar.php[/COLOR]">Registra Cliente</a>';[/B]
?>
Otra cosa, cuando haces un sistema intenta poner SOLO 1 archivo de configuracion (oceace de conexión a bases de datos . Y ya lo llamas como quieras, include o require, esto para poder darle mantenimiento te será mas facil


Gracias brother, como veras hago lo que puedo.Salu2
 
Volver
Arriba