Foros del Web » Programando para Internet » PHP »

Mensaje de error al mostrar resultados

Estas en el tema de Mensaje de error al mostrar resultados en el foro de PHP en Foros del Web. Hola muchachos, vengo con un problema que tengo y no puedo solucionar... Lo que quiero lograr es con una funcion, generar una tabla que va ...
  #1 (permalink)  
Antiguo 21/05/2006, 15:37
 
Fecha de Ingreso: noviembre-2005
Ubicación: Córdoba - Argentina
Mensajes: 155
Antigüedad: 18 años, 5 meses
Puntos: 1
Mensaje de error al mostrar resultados

Hola muchachos, vengo con un problema que tengo y no puedo solucionar...

Lo que quiero lograr es con una funcion, generar una tabla que va a tener celdas de subtitulos....... osea, esta pagina es sobre una distribuidora de productos y tienen diferentes ruteos que contienen un conjunto de localidades a las cuales se llevaran productos. Lo que quiero hacer es que cuando se genere la tabla me haga una celda con el nombre del ruteo y abajo de esta se listen todas las localidades que pertenecen a este ruteo, una vez que se listaron todas las localidades de ese ruteo se crea la siguiente celda con el nombre de ruteo siguiente y abajo de esta sus respectivas localidades y asi sucesivamente.

El código que escribi es el siguiente:

Código PHP:
<?

function localidades507(){

echo 
'<table>';
$zona507bmysql_query("SELECT * FROM ruteos WHERE zona= 507");
while (
$salidabmysql_fetch_array($zona507b)){
echo 
'<tr><td>'.$salidab[numero].'</td></tr>';
$zona507mysql_query("SELECT * FROM localidades WHERE zona= 507 && ruteo= $salidab[numero]");
while (
$salidamysql_fetch_array($zona507)){  // LINEA 60
echo '<tr><td>'.$salida[nombre].'<br></td></tr>';
  } 
//cierro while 2°
  
//cierro while 1°
echo '</table>';

}

?>
Cuando lo ejecuto ande perfecto, pero me sale un error que es el siguiente:

Cita:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\appserv\www\llanos\admin\zonas.php on line 60
marque en el codigo cual seria la linea 60.

Desde ya, muchas gracias!
  #2 (permalink)  
Antiguo 21/05/2006, 15:47
Avatar de bichomen  
Fecha de Ingreso: junio-2003
Ubicación: Barcelona y alrededores, España
Mensajes: 877
Antigüedad: 20 años, 10 meses
Puntos: 2
Cita:
Iniciado por nacho004
Código PHP:
$zona507mysql_query("SELECT * FROM localidades WHERE zona= 507 && ruteo= $salidab[numero]"); 
Donde dice ruteo, no tendria que poner ruteos???????

bichomen
__________________
"Se sabe con exactitud, con cuanta imprecisión, se sabe algo"
Linux Registered User #320332
  #3 (permalink)  
Antiguo 21/05/2006, 15:50
 
Fecha de Ingreso: noviembre-2005
Ubicación: Córdoba - Argentina
Mensajes: 155
Antigüedad: 18 años, 5 meses
Puntos: 1
No no, el nombre del campo es ruteo, tal vez te confundiste porque la primer consulta la hago a una BD que se llama ruteos.

  #4 (permalink)  
Antiguo 21/05/2006, 18:44
 
Fecha de Ingreso: mayo-2006
Mensajes: 74
Antigüedad: 17 años, 11 meses
Puntos: 0
Weno en mi opinion y lo que puedo decirte a simple vista es que la primera consulta k haces es a una base de datos llamada RUTEOS y si deberia ir = en la consulta entonces pusiste RUTEO trata de areglar eso aver..
__________________
Www.ZeroXDesign.Com - Diseño De Webs - Alojamiento - Mantenimiento Y Mucho Mas.

Con los mejores precios y la mejor calidad de la red.
  #5 (permalink)  
Antiguo 21/05/2006, 19:03
 
Fecha de Ingreso: noviembre-2005
Ubicación: Córdoba - Argentina
Mensajes: 155
Antigüedad: 18 años, 5 meses
Puntos: 1
Es que hago consulta a dos tablas de la BD. Una de las tablas se llama "ruteos", en esta hago la consulta para que me listee los numeros de ruteos, y la segunda consulta la hago a la tabla llamada "localidades" para que me listee las localidades en su ruteo correspondiente. Los resultados me los imprime a todos como quiero, pero el problema es que aparece ese mensaje que mostre en el primer post. no se que esta pasando...
  #6 (permalink)  
Antiguo 21/05/2006, 20:16
Avatar de vipcove1
(Desactivado)
 
Fecha de Ingreso: septiembre-2005
Mensajes: 17
Antigüedad: 18 años, 7 meses
Puntos: 0
Utiliza este codigo deberia solucionar el error

el codigo de abajo deberia solucionar tu error, el error se presenta cuando no hay datos en la consulta que realizaste y por lo tanto no se puede extraer datos de la consulta y el motor de php devuelve ese error
Código PHP:
function localidades507(){

echo 
'<table>';
   
$zona507b mysql_query("SELECT * FROM ruteos WHERE zona= 507");
     
//consultamos se hemos encontrados los datos solicitados o si la consulta nos arroja datos
     
$datos_e mysql_num_rows($zona507b);
         if( 
$datos_e ){
             while (
$salidabmysql_fetch_array($zona507b)){
                echo 
'<tr><td>'.$salidab[numero].'</td></tr>';
                    
$zona507mysql_query("SELECT * FROM localidades WHERE zona= 507 && ruteo= $salidab[numero]");
                    
$datos_e2 mysql_num_rows($zona507)
                        if(
$datos_e2 >) { 
                            while (
$salidamysql_fetch_array($zona507)){
                            echo 
'<tr><td>'.$salida[nombre].'<br></td></tr>';
                              } 
//cierro while 2°
                        
}else{
                            echo 
"No se han encontrado Datos en la Segunda Consulta";
                        }
//cerramos el segundo if
              
//cierro while 1°
        
}else {
            echo 
"No se han encontrado los datos en la Primera Consulta";
        }
//cerramos el primer if
echo '</table>';


  #7 (permalink)  
Antiguo 21/05/2006, 21:01
 
Fecha de Ingreso: noviembre-2005
Ubicación: Córdoba - Argentina
Mensajes: 155
Antigüedad: 18 años, 5 meses
Puntos: 1
vipcove, gracias por tu respuesta! pero no se porque sigue sin funcionar me imprime los resultados como me lo hacia a mi pero tambien sigue saliendo el error (con mysql_num_rows) y ademas me muestra muchas veces el mensaje: "No se han encontrado Datos en la Segunda Consulta"

Me esta volviendo loco esto!
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 22:56.