Ver Mensaje Individual
  #4 (permalink)  
Antiguo 19/09/2013, 17:10
Mariuch
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problemas con la Condicional "If"

Hola. Acá te paso tu código con algunas correciones, probalo ya que debería solucionar tu problema. No hace falta que utilices isset para preguntar por el resultado de tu consulta, simplemente con preguntar si $result es verdadero, ya obtienes la información que necesitás.

También reemplacé el if que utilizaste para obtener el valor de 'datoconsulta' por un operador ternario, que es la manera más clásica de recuperar información en PHP.

Código PHP:
<?php
    conectar
(); //Conecto la BD, Ya antes incluí la librería.
     
    //Pregunto si Existe el dato solicitado (Lo llamé 'datoconsulta')
     
    
$datoconsulta = ( isset( $_POST'datoconsulta' ] ) ) ? $_POST'datoconsulta' ] : false;

    
//luego hago una busqueda en la data base
     
    
$sql "SELECT * FROM historia NATURAL JOIN representante WHERE historia.id_historia='$datoconsulta' OR historia.nombres='$datoconsulta'";
    
$result mysql_query ($sql);
     
    
//pregunto si la busqueda fué exitosa
     
    
if( $result ){  
        while( 
$fila mysql_fetch_array$result )){
    
?>
        <br /> <h3>&nbsp;&nbsp;&nbsp;PACIENTE: <?php echo $fila["nombres"]; echo " "; echo $fila["apellidos"];?></h3> <br>
        <h3>&nbsp;&nbsp; Fecha: <?php echo date('d-M-Y'); ?> </h3><br><br>
    <?php
        
}   
    } else {
        echo 
'No existe nada';
    }
?>
De esta manera debería funcionar.
Una cosa más, la consulta SQL que estás haciendo tiene algunos errores al plantear el JOIN, ya que además del WHERE para que levante la información que le pedís, debe ir siempre acompañado de una cláusula ON que lo respalde. Te doy un ejemplo:

Código PHP:
<?php

$consulta 
"SELECT * FROM usuarios JOIN paises on usuarios.PAISES_ID = paises.ID WHERE NOMBRE_PAIS = 'Francia'";

?>
Aquí estaría haciendo un join de la tabla con los datos de usuarios más la de los países para obtener la información de ambos, pero siempre es necesario matchear foreign key contra primary key cuando uses un join ya que si por algún motivo un registro que necesites no cumple con tu cláusula where, no vas a recibir la información necesaria.

Saludos