Foros del Web » Programando para Internet » PHP »

Busqueda En Dos O Mas Tablas

Estas en el tema de Busqueda En Dos O Mas Tablas en el foro de PHP en Foros del Web. HOLA PERDON POR LAS MOLESTIAS PERO NECESITO AYUDA MEGA URGENTE NECESITO CREAR UN REPORTE EN EL QUE MI BUSQUEDA ME LLAME INFORMACION DE TODAS MIS ...
  #1 (permalink)  
Antiguo 27/02/2008, 08:08
 
Fecha de Ingreso: febrero-2008
Mensajes: 32
Antigüedad: 16 años, 2 meses
Puntos: 0
Exclamación Busqueda En Dos O Mas Tablas

HOLA PERDON POR LAS MOLESTIAS
PERO NECESITO AYUDA MEGA URGENTE

NECESITO CREAR UN REPORTE EN EL QUE MI BUSQUEDA ME LLAME INFORMACION DE TODAS MIS TABLAS
LAS TABLAS SON
LENTES
PLANTILLAS
MEDICAMENTOS
ENDODONCIA
VIATICOS
Y TODAS VAN LIGAS CON RPE (CLAVE DEL TRABAJADOR)

ESTOS SON LOS CODIGOS QUE TENGO DE UNA BUSQUEDA CON UNA SOLA TABLA
MI PREGUNTA ES COMO HACER LOS CODIGOS PARA QUE ME HAGA LA BUSQUEDA CON TODAS LAS TABLAS



Código HTML:
<html>
<head>
<title>Untitled Document</title>
</head>
<body>
<form action="tuti.php" method="post">
  <label for="textfield">RPE</label>
  <input type="text" name="cadena" id="textfield" size="4"  maxlength="5"/>
  <label for="textfield">FECHA INICIAL</label>
  <input type="text" name="cadenita" id="textfield" size="9"  />
<label for="textfield">FECHA FINAL</label>
  <input type="text" name="cadenota" id="textfield" size="9"  />
  <label for="Submit"></label>
  <input type="submit" name="Submit" value="Submit" id="Submit" />
</form>
</body>
</html> 
tuti.php:
Código PHP:
<html> 
<head> 
<title>Untitled Document</title> 
</head> 
</head>  
<body>  
<img src="cfe.JPG" width="241" height="74" align="middle" align="right" />  
<hr align="right">   
<font color="#009966" size="5" face="Times New Roman, Times, serif" align="right"><i><b> REPORTE DE ORTOPEDIA</b></i></font> 
<?php   
$cadena 
$_POST['cadena'];  
$cadenita $_POST['cadenita'];  
$cadenota $_POST['cadenota'];  
$link mysql_connect('localhost','root','');   
mysql_select_db('prestaciones',$link) or die(myslq_error());   
$sql "SELECT * FROM plantillas WHERE rpe like '%$cadena%' AND (fechita >= '$cadenita' AND fechita <= '$cadenota')";   
$ren mysql_query($sql$link) or die( mysql_error() );    
echo 
"<table border=3 bordercolor=black>";  
echo 
"<tr><td>RPE</td><td>NOMBRE DE TRABAJADOR</td><td>NOMBRE DE BENEFICIARIO</td><td>FECHA DE AUTORIZACION DEL IMSS</td><td>FECHA DE T-02</td><td>FECHA DE ALTA</td><td>IMPORTE</td></tr>";   
while(
$row mysql_fetch_array($ren)) {   
echo 
"<tr><td>".$row["rpe"]."</td><td>".$row["nombret"]."</td><td>".$row["nombreb"]."</td><td>".$row["auimss"]."</td><td>".$row["fect02"]."</td><td>".$row["fechita"]."</td><td align=right>".$row["importe"]."</td></tr>";   
$sumita+=$row["importe"];  
}  
echo 
"<tr><td></td><td></td><td></td><td></td><td></td><td>TOTAL</td><td align=right>".$sumita."</td></tr>";  
echo 
"</table>";  
?>  
</body>  
</html>
ESPERO ME PUEDAN AYUDAR
GRACIAS
  #2 (permalink)  
Antiguo 27/02/2008, 08:18
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Re: Busqueda En Dos O Mas Tablas

mysql_select_db('prestaciones',$link) or die(myslq_error());
$sql = "SELECT * FROM plantillas WHERE rpe like '%$cadena%' AND (fechita >= '$cadenita' AND fechita <= '$cadenota')";


aqui estas seleccionando solo la tabla plantillas, creo que has de incluir las demas:ç



$sql = "SELECT * FROM plantillas, lentes, medicamentos, endodoncia, viaticos WHERE rpe like '%$cadena%' AND (fechita >= '$cadenita' AND fechita <= '$cadenota')";

creo que asi deberia de funcionar, seleccionando todas las tablas en el SELECT
  #3 (permalink)  
Antiguo 27/02/2008, 08:32
 
Fecha de Ingreso: febrero-2008
Mensajes: 32
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: Busqueda En Dos O Mas Tablas

disculpa ya lo hice y me marca esto

Column 'rpe' in where clause is ambiguous


que significa

que tengo mal?
  #4 (permalink)  
Antiguo 27/02/2008, 08:36
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Re: Busqueda En Dos O Mas Tablas

¿los campos RPE son primarios o indices?
  #5 (permalink)  
Antiguo 27/02/2008, 08:43
 
Fecha de Ingreso: febrero-2008
Mensajes: 32
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: Busqueda En Dos O Mas Tablas

son indices
las llaves primarias son

id_len
id_med
id_via
id_pla
id_end

eso lo hice pq si dejaba el rpe como primaria solo me dejaria ingresar un solo registro para ese rpe y son demasiados los que tengo que hacer
  #6 (permalink)  
Antiguo 27/02/2008, 08:52
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Re: Busqueda En Dos O Mas Tablas

prueba quitando los % de

'%$cadena%' dejalo asi:

$sql = "SELECT * FROM plantillas, lentes, medicamentos, endodoncia, viaticos WHERE rpe like '$cadena' AND (fechita >= '$cadenita' AND fechita <= '$cadenota')";

y prueba tambien

WHERE rpe = $cadena' AND (fechita >= '$cadenita' AND fechita <= '$cadenota')";

cambiando el like por =
  #7 (permalink)  
Antiguo 27/02/2008, 09:47
 
Fecha de Ingreso: febrero-2008
Mensajes: 32
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: Busqueda En Dos O Mas Tablas

no funciona

que puedo hacer?
  #8 (permalink)  
Antiguo 27/02/2008, 11:05
 
Fecha de Ingreso: febrero-2008
Mensajes: 32
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: Busqueda En Dos O Mas Tablas

Por Favor Ayudenme!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!:' (
  #9 (permalink)  
Antiguo 27/02/2008, 12:45
 
Fecha de Ingreso: febrero-2008
Mensajes: 32
Antigüedad: 16 años, 2 meses
Puntos: 0
Exclamación Re: Busqueda En Dos O Mas Tablas

por favor alguien ayudeme lo que me dijeron que hiciera, ya lo hice y no me funciono pido de su ayuda por favor
por fitas ayudenme
se los pido
  #10 (permalink)  
Antiguo 27/02/2008, 12:51
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Re: Busqueda En Dos O Mas Tablas

empecemos de nuevo

primero, que error te arroja
y cual es la linea del error, vamos, que codigo contiene esa linea o lineas
  #11 (permalink)  
Antiguo 27/02/2008, 13:04
 
Fecha de Ingreso: febrero-2008
Mensajes: 32
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: Busqueda En Dos O Mas Tablas

no me marca un error en alguna linea solo me muestra este mensaje la pagina

Column 'rpe' in where clause is ambiguous

y mi codigo es este

Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>
</head> 
<body> 
<img src="cfe.JPG" width="241" height="74" align="middle" align="right" /> 
<hr align="right">  
<font color="#009966" size="5" face="Times New Roman, Times, serif" align="right"><i><b> REPORTE DE ORTOPEDIA</b></i></font> 
<?php  
$cadena 
$_POST['cadena']; 
$cadenita $_POST['cadenita']; 
$cadenota $_POST['cadenota']; 
$link mysql_connect('localhost','root','');  
mysql_select_db('prestaciones',$link) or die(myslq_error());  
$sql "SELECT * FROM plantillas, viaticos, medicamentos, endodoncia, lentes  WHERE rpe = '$cadena' AND (fechita >= '$cadenita' AND fechita <= '$cadenota')";  
$ren mysql_query($sql$link) or die( mysql_error() );   
echo 
"<table border=3 bordercolor=black>"
echo 
"<tr><td>RPE</td><td>NOMBRE DE TRABAJADOR</td><td>NOMBRE DE BENEFICIARIO</td><td>FECHA DE AUTORIZACION DEL IMSS</td><td>FECHA DE T-02</td><td>FECHA DE ALTA</td><td>IMPORTE</td></tr>";  
while(
$row mysql_fetch_array($ren)) {  
echo 
"<tr><td>".$row["rpe"]."</td><td>".$row["nombret"]."</td><td>".$row["nombreb"]."</td><td>".$row["auimss"]."</td><td>".$row["fect02"]."</td><td>".$row["fechita"]."</td><td align=right>".$row["importe"]."</td></tr>";  
$sumita+=$row["importe"]; 

echo 
"<tr><td></td><td></td><td></td><td></td><td></td><td>TOTAL</td><td align=right>".$sumita."</td></tr>"
echo 
"</table>"
?> 
</body> 
</html>
  #12 (permalink)  
Antiguo 27/02/2008, 14:04
 
Fecha de Ingreso: febrero-2008
Mensajes: 32
Antigüedad: 16 años, 2 meses
Puntos: 0
Re: Busqueda En Dos O Mas Tablas

hola?
por favor ayudenme
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 21:10.