Foros del Web » Programando para Internet » PHP »

while funciona extraño

Estas en el tema de while funciona extraño en el foro de PHP en Foros del Web. hola amigos, tengo un bucle while en una pagina que se carga segun la info que llega por get Código PHP: $sql_pro        =    "SELECT idProducto,strNombre,idCategoria,strPrecio,strArea,strFoto_chica FROM tblproductos WHERE idCategoria='".$_GET["idCat"]."' ORDER BY strNombre"; $pro            =    mysql_query($sql_pro, $mumma) or die(mysql_error()); $row_pro        =    mysql_fetch_assoc($pro); $num_pro        =    mysql_num_rows($pro); ...
  #1 (permalink)  
Antiguo 29/02/2012, 13:18
 
Fecha de Ingreso: diciembre-2011
Ubicación: Chile
Mensajes: 36
Antigüedad: 12 años, 5 meses
Puntos: 2
while funciona extraño

hola amigos, tengo un bucle while en una pagina que se carga segun la info que llega por get

Código PHP:

$sql_pro        =    "SELECT idProducto,strNombre,idCategoria,strPrecio,strArea,strFoto_chica FROM tblproductos WHERE idCategoria='".$_GET["idCat"]."' ORDER BY strNombre";
$pro            =    mysql_query($sql_pro, $mumma) or die(mysql_error());
$row_pro        =    mysql_fetch_assoc($pro);
$num_pro        =    mysql_num_rows($pro);

$sql_otras        =    "SELECT strNombre,idCategoria FROM tblcategorias WHERE strArea='".$row_pro["strArea"]."' ORDER BY strNombre";
$otras            =    mysql_query($sql_otras, $mumma) or die(mysql_error());
//$row_otras        =    mysql_fetch_assoc($otras);

    <h1>Otras Categorías Disponibles</h1>
      <br />
      <ul>
<?php while ($row_otras=mysql_fetch_assoc($otras)){?>   
        <li><a href="categoria_detalle.php?idCat=<?php echo $row_otras["idCategoria"]; ?>"><?php echo $row_otras["strNombre"]; ?></a></li>
<?php };?>
        
      </ul>
      <div class="separador"></div>
la pagina de llama: detalle_categorias.php y se alimenta segun un GET, ejemplo: idCat=8

el problema es que si entro a

detalle_categorias.php?idCat=8 el while si funciona, pero si entro a
detalle_categorias.php?idCat=4 no muestra nada, cuando deberia mostrar 5 resultados

ya hice un vardump , y verifique que la variable $row_pro["strArea"] le entrege a la consulta la palabra correcta, asi que no cacho que mas puede ser

cualquier ayuda es bienvenida
  #2 (permalink)  
Antiguo 29/02/2012, 13:39
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 13 años, 7 meses
Puntos: 331
Respuesta: while funciona extraño

verifique que la variable $row_pro["strArea"] le entrege a la consulta la palabra correcta, ok, ahora verifica que la select es correcta y que en realidad devuelve el resultado esperado. Haz echo de la variable y pruébala en tu cliente mysql. Además, antes de
Código HTML:
Ver original
  1. <h1>Otras Categorías Disponibles</h1>

Saludos

tienes que cerrar la etiqueta de php

Código PHP:
Ver original
  1. ?>
  2. <h1>Otras Categorías Disponibles</h1>
__________________
Fere libenter homines, id quod volunt, credunt.
  #3 (permalink)  
Antiguo 29/02/2012, 13:59
 
Fecha de Ingreso: diciembre-2011
Ubicación: Chile
Mensajes: 36
Antigüedad: 12 años, 5 meses
Puntos: 2
Respuesta: while funciona extraño

ya le hice echo a la consulta y la entrega bien

SELECT strNombre,idCategoria FROM tblcategorias WHERE strArea='Salud' ORDER BY strNombre";

sorry por el cierre, pero el archivo es mas grande y solo postee el codigo necesario para la ejecucion del while, el el doc original los cierres de php estan bien puestos ;)

?>
<h1>Otras Categorías Disponibles</h1>
  #4 (permalink)  
Antiguo 29/02/2012, 19:51
Avatar de mcun  
Fecha de Ingreso: octubre-2010
Ubicación: tras la pantalla
Mensajes: 466
Antigüedad: 13 años, 6 meses
Puntos: 55
Respuesta: while funciona extraño

hay muchas cosas que no se ven en el código, seguro que no dejas nada importante afuera ?

como esta tu base de datos puedes postear las estructura ?

Etiquetas: extraño, mysql, sql, variables
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:27.