Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

problemita tonto con consulta

Estas en el tema de problemita tonto con consulta en el foro de Bases de Datos General en Foros del Web. Hola a ver si me podeis ayudar con una consulta que no me muestra lo que quiero y con un warning de mysql que me ...
  #1 (permalink)  
Antiguo 23/07/2007, 10:43
Avatar de Javiglez  
Fecha de Ingreso: marzo-2006
Ubicación: Valladolid
Mensajes: 496
Antigüedad: 18 años, 8 meses
Puntos: 0
problemita tonto con consulta

Hola a ver si me podeis ayudar con una consulta que no me muestra lo que quiero y con un warning de mysql que me da el mismo codigo. El caso es que tengo 3 tablas relacionadas CLIENTES que tienen unos EXPEDIENTES y estos que tienen unos ARCHIVOS. Pues bien tengo unas sesiones y según entre un cliente u otro pues me muestre los archivos de los expedientes. una consulta facil a priori...pues bien no me los muestra....Os pongo el trozo de código para mostrar los archivos del cliente en sesión...

Código PHP:
<?php 
        
include("conectarse_bd.php"); 
        include(
"login.php");
        
session_start();
        
$dnicliente $_SESSION['dni']; 
        
$sqlmysql_query("SELECT * FROM Expedientes WHERE dni='".$_SESSION['dni']."' AND Expedientes.expediente='%s'");
        
$result mysql_query(sprintf$sqlmysql_real_escape_string$_GET['expediente'] ) ) ); 

?>

<?php        
        
echo "<p style='font-family: Verdana, Arial, Helvetica, sans-serif;font-size: 11px;color: #000000; font-weight: bold; float:right;'  > Usuario   ".$_SESSION['usNick']." ";
        echo 
$_SESSION['dni'];  
        echo 
$sql;
        echo 
$result;
do{
//seleccionar los expedientes con dni del usuario y expediente especifico 
$link "Expediente nº %s %s<br>";
if(isset(
$result) && mysql_num_rows($result)>0)
{
    while(
$fila=mysql_fetch_assoc($result))
    {
        echo 
sprintf$link$fila['expediente'], $fila['nombre'] );
        echo 
"<br>";
    }
}
?>
</p>
  <fieldset class="clase1">
  <legend>FOTOS </legend>
      <?php
    $sql
="SELECT Expedientes.expediente, Documentos.nombre FROM Expedientes, Documentos WHERE Expedientes.dni='".$_SESSION['dni']."' AND Documentos.tipo='foto' AND Documentos.expediente=Expedientes.expediente AND Expedientes.expediente='%s'" ;
    
$result mysql_query(sprintf$sqlmysql_real_escape_string$_GET['expediente'] ) ) );
    
$nregistros=mysql_num_rows($result);
    if (
$nregistros!=0){
    While (
$registro=mysql_fetch_row($result))
                        {
                        echo 
'<a href="./UPLOAD/'.$registro[1].'" target="_blank">'.$registro[1]. '</a>';
                        echo 
"<br>";
                        }
                        }else{
                        echo 
"<p style='font-family: Verdana, Arial, Helvetica, sans-serif;font-size: 11px;color: #FF0000; font-weight: bold;' > No hay archivos con este formato </p>";
                        }
    
?>
Pues bien me da este warning
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /web/sites/user/6/72/54406/public/www/cuenta2.php on line 44 y no me muestra esta consulta
$sql="SELECT Expedientes.expediente, Documentos.nombre FROM Expedientes, Documentos WHERE Expedientes.dni='".$_SESSION['dni']."' AND Documentos.tipo='foto' AND Documentos.expediente=Expedientes.expediente AND Expedientes.expediente='%s'" ;

A ver si me podeis ayudar porque tiene que ser una bobada porque si acorto la query si me muestra todo genérico...Gracias de antemano

Última edición por Javiglez; 23/07/2007 a las 10:52
  #2 (permalink)  
Antiguo 23/07/2007, 15:13
Avatar de Javiglez  
Fecha de Ingreso: marzo-2006
Ubicación: Valladolid
Mensajes: 496
Antigüedad: 18 años, 8 meses
Puntos: 0
Re: problemita tonto con consulta

Ya he descubierto cual es el fallo pero no me sale corregirlo, he acortado la consulta haciendo pruebas y la he dejado asi...
Código PHP:
$sql="SELECT Expedientes.expediente, Documentos.nombre FROM Expedientes, Documentos WHERE Expedientes.dni='".$_SESSION['dni']."' AND Documentos.tipo='foto'"  
con el consiguiente problema de que me muestra todo con lo que le falta otro AND con el numero de expediente que es la clave de la tabla expediente y la foránea en la tabla archivos pero no me sale...
La estructura de la BD es CLIENTES con EXPEDIENTE relacionados por el dni y EXPEDIENTE con ARCHIVOS relacionados con el numero de expediente que es lo que me falta por poner bien en la consulta por eso ahora me muestra los archivos de todos los expedientes y no solo los de un expediente en concreto con dni del cliente tal....a ver si me podeis echar una mano...gracias

Última edición por Javiglez; 23/07/2007 a las 15:25
  #3 (permalink)  
Antiguo 24/07/2007, 02:59
Avatar de Javiglez  
Fecha de Ingreso: marzo-2006
Ubicación: Valladolid
Mensajes: 496
Antigüedad: 18 años, 8 meses
Puntos: 0
Re: problemita tonto con consulta

a ver si algún moderador me puede mover el tema al subforo MYSQL, gracias :)
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 23:36.