Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   PHP (https://www.clubdelphi.com/foros/forumdisplay.php?f=15)
-   -   Consulta en mas de una tabla con PHP (https://www.clubdelphi.com/foros/showthread.php?t=78331)

DARKSISTEMS 10-04-2012 05:02:22

Consulta en mas de una tabla con PHP
 
Muy buenas, necesito una gran ayuda ya que tengo que generar una consulta impresa de una base de datos pero he podido realizara solo usando una tabla pero no entrelazándolas la base de datos se denomina constik, y consta de 3 tablas
la primera es paciente, con 9 campos (con, tipdoc,numdoc, priape, segape, prinom,segnom,eps,fecha)
la segunda se denomina stiker con 3 campos (con,fecha, paciente)
la tercera es tipdoc solo con 2 campos (con, decri)
con en todas es el consecutivo o numero de verificación, la idea es car impresos tres veces en forma horizontal los siguientes datos

Código PHP:

nombre completo (priape, segape, prinom,segnom)
numero de documento (numdoc) tipo de documento (decrip)
eps (eps) y fecha de creacion del stiker (stiker.fecha)

intente con este php pero solo toma los datos de paciente
<?PHP

    
include("conlec.php");
    
    
$listdoc mysql_query("SELECT * FROM paciente WHERE numdoc like '%".$_POST["selectbox"]."%'");
    
    While (
$consulta mysql_fetch_array($listdoc)){
        echo 
'<br>Documento Numero:'.$consulta ["numdoc"].'-'.$consulta["tipdoc"].
        
'<br>Nombre:'.$consulta["prinom"].'-'.$consulta["segnom"].'-'.$consulta["priape"].'-'.$consulta["segnom"].
        
'<br>EPS:'.$consulta["eps"].
        
'<br>Fecha De Creacion:'.$consulta["fecha"];
    };
   
?>

y trate con este para consultar todos pero me arroja error ( ! ) Parse error: syntax error, unexpected '.' in C:\wamp\www\constik\consulta2.php on line 8

Código PHP:

<?PHP

    
include("conlec.php");
    
    
$conpaciente mysql_query("SELECT * FROM paciente WHERE numdoc like '%".$_POST["selectbox"]."%'");
    
    while (
$consulta mysql_fetch_array($conpaciente)){
        
$numdoc = .$consulta["numdoc"].
        
$tipdoc = .$consulta["tipdoc"].
        
$prinom = .$consulta["prinom"].
        
$segnom = .$consulta["segnom"].
        
$priape = .$consulta["priape"].
        
$segape = .$consulta["segape"].
        
$eps = .$consulta["eps"].
        
$fecha = .$consulta["fecha"];
    };
    
    
$constiker mysql_query("SELECT * FROM stiker WHERE paciente like '%".$_POST["selectbox"]."%'");
    while (
$stik mysql_fetch_array($constiker)){
        
$costik = .$stik["con"].
        
$fecstik = .$stik["fecha"];
    };
    
    
$contdoc mysql_query("select * from tipdoc where con='$tipdoc'");
    while (
$tdocu mysql_fetch_array($contdoc)){
        
$decrip = .$tdocu["decrip"];
    };
    
    echo 
'<br>Documento Numero:'.$numdoc.'-'.$tipdoc.
        
'<br>Nombre:'.$prinom.'-'.$segnom.'-'.$priape.'-'.$segape.
        
'<br>EPS:'.$eps.'-stiker:'.$costik.
        
'<br>Fecha De Creacion:'.$fecstik;
    
?>

gracias de antemano por la ayuda intente con el "inner join on"

Casimiro Notevi 10-04-2012 14:55:13

Hola, recuerda poner los tags al código fuente, ejemplo:




Gracias :)

Ñuño Martínez 11-04-2012 14:07:21

Te sobran "puntos" por todas partes. Por ejemplo, aquí:
Código PHP:

$numdoc = .$consulta["numdoc"]. 

¿Por qué los pones? :confused: Da la sensación de que no sabes programar PHP todavía, o que al menos no sabes para qué sirve el punto.

El operador "punto" realiza la concatenación de cadenas. Es decir, la expresión:
Código PHP:

'Hola a todos. ' "Hoy hace un buen día." 

devuelve la cadena "Hola a todos. Hoy hace un buen día".

Por lo tanto, en el siguiente código:
Código PHP:

$costik = .$stik["con"].
$fecstik = .$stik["fecha"]; 

Primero, hay un error de sintaxis porque hay dos puntos a los que les falta un operando. Si los eliminas y lo dejas así:
Código PHP:

$costik $stik["con"].
$fecstik $stik["fecha"]; 

no hay error de sintaxis, pero dudo que obtengas el resultado deseado ya que $fecstik contendrá $stik["fecha"] pero $costik contendrá $stik["con] . $stik["fecha"]. Recuerda que el final del comando lo marca el punto y coma, no el salto de línea.

Te sugiero que des un buen repaso a tus apuntes de PHP.


La franja horaria es GMT +2. Ahora son las 08:51:23.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi