Foros del Web » Programando para Internet » PHP »

Problema con consulta

Estas en el tema de Problema con consulta en el foro de PHP en Foros del Web. Bueno, quiero construir un menu, a partir de una consulta y un while. Tengo una tabla que se llama seccio , donde tengo un campo ...
  #1 (permalink)  
Antiguo 23/09/2010, 09:45
 
Fecha de Ingreso: enero-2005
Mensajes: 170
Antigüedad: 19 años, 3 meses
Puntos: 0
Problema con consulta

Bueno, quiero construir un menu, a partir de una consulta y un while.

Tengo una tabla que se llama seccio, donde tengo un campo llamado cs_nom, o ct_nom (siendo cs castellano y ct catalan) y otro campo llamado id_idioma. Según el id_idioma que me retorne la consulta, a cada iteración de while irá imprimiendo cada campo del menu, en su corresponiendte idioma.

$link2 = mysql_connect($server,$dbuser,$dbpass) or die ("Impossible connectar amb el servidor");

$query = sprintf("SELECT * FROM seccio WHERE visible = true ORDER BY id_seccio");
$result = mysql_db_query($database,$query,$link2) or die (mysql_error());
//$n = mysql_num_rows($result2) or die (mysql_error());

while ($row = mysql_fetch_array($result)>0) {
echo("seccio:".$row["id_seccio"]);
?>
<tr>
<td align="center" onClick="javascript:changeImage('fletxas<?=$row["id_seccio"]?>','im1');parent.frames['Pag'].location='seccions/search.php?seccio=<?=$row["id_seccio"]?>';" onMouseOver="mOvr(this,'#eeeeee');" onMouseOut="mOut(this,'#ffffff');" bgcolor="#ffffff" class="menu"><p align="left"><img src="gifs/fletxa.gif" name="fletxas<?=$row["id_seccio"]?>" width="8" height="10" border="0"><font face="Verdana" size="1" color="#000000"><a href="seccions/search.php?seccio=<?=$row["id_seccio"]?>" onFocus="this.blur()" target="Pag">&nbsp;<?=$row[$_SESSION["idioma"]."_nom"]?></a></font></p></td>
</tr>
<?
Como véis, antes de cada resultado, he puesto un echo seccio, para comprobar que el $row tenga contenido. Pero no es así. El resultado que obtengo es 33 veces seccio: (numeros de registros en la tabla) y luego blanco. O sea, el $row está vacio.

(He puesto las partes conflictivas en negrita, para que lo veais mejor)

Donde está el error? gracias!
  #2 (permalink)  
Antiguo 23/09/2010, 10:04
Avatar de AdrianSeg  
Fecha de Ingreso: enero-2010
Mensajes: 595
Antigüedad: 14 años, 3 meses
Puntos: 14
Respuesta: Problema con consulta

Mira esto seria asi:

Código PHP:
Ver original
  1. <?=$row["id_seccio"]?>
MAL

Código PHP:
Ver original
  1. <?php echo $row["id_seccio"];?>
BIEN
  #3 (permalink)  
Antiguo 23/09/2010, 10:07
 
Fecha de Ingreso: enero-2005
Mensajes: 170
Antigüedad: 19 años, 3 meses
Puntos: 0
Respuesta: Problema con consulta

Ok. Supongo que eso lo dices por tema de standard no? Faltaba también el ; pero sigue sin funcionar.

gracias!
  #4 (permalink)  
Antiguo 23/09/2010, 10:10
Avatar de AdrianSeg  
Fecha de Ingreso: enero-2010
Mensajes: 595
Antigüedad: 14 años, 3 meses
Puntos: 14
Respuesta: Problema con consulta

También falta el echo...que es lo que saca los datos.
  #5 (permalink)  
Antiguo 23/09/2010, 10:10
Avatar de Vun
Vun
Colaborador
 
Fecha de Ingreso: agosto-2009
Ubicación: Benalmádena, España
Mensajes: 2.265
Antigüedad: 14 años, 9 meses
Puntos: 150
Respuesta: Problema con consulta

Cita:
Iniciado por AdrianSeg Ver Mensaje
Mira esto seria asi:

Código PHP:
Ver original
  1. <?=$row["id_seccio"]?>
MAL

Código PHP:
Ver original
  1. <?php echo $row["id_seccio"];?>
BIEN

Si sirve el <?=$variable?>

Yo lo uso cientos de veces.... sin problema alguno.

Para alberto, prueba a poner esta linea asi:

$result = mysql_query($query) or die (mysql_error());
  #6 (permalink)  
Antiguo 23/09/2010, 10:19
Avatar de Monimo  
Fecha de Ingreso: noviembre-2007
Ubicación: Mexico Df
Mensajes: 742
Antigüedad: 16 años, 5 meses
Puntos: 69
Respuesta: Problema con consulta

Cita:
Iniciado por albertpg Ver Mensaje

Donde está el error? gracias!
En tu planteamiento, si entendí bien lo que quieres el es el numero de registro no es así? Debes usar mysql_fetch_row no array....
__________________
La verdad es que lo que no quisiera dejar de hacer nunca (a parte de comer) es programar
  #7 (permalink)  
Antiguo 23/09/2010, 10:20
 
Fecha de Ingreso: enero-2005
Mensajes: 170
Antigüedad: 19 años, 3 meses
Puntos: 0
Respuesta: Problema con consulta

No, quiero el registro propiamente!
  #8 (permalink)  
Antiguo 23/09/2010, 10:29
Avatar de Monimo  
Fecha de Ingreso: noviembre-2007
Ubicación: Mexico Df
Mensajes: 742
Antigüedad: 16 años, 5 meses
Puntos: 69
Respuesta: Problema con consulta

y asi:

while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
printf("seccio: %s ", $row["id_seccio"]);
}

o $row[] y dentro de corchetes el numero de la columna...
__________________
La verdad es que lo que no quisiera dejar de hacer nunca (a parte de comer) es programar
  #9 (permalink)  
Antiguo 23/09/2010, 10:33
 
Fecha de Ingreso: enero-2005
Mensajes: 170
Antigüedad: 19 años, 3 meses
Puntos: 0
Respuesta: Problema con consulta

Tampoco, no hay manera.
  #10 (permalink)  
Antiguo 23/09/2010, 10:36
Avatar de Monimo  
Fecha de Ingreso: noviembre-2007
Ubicación: Mexico Df
Mensajes: 742
Antigüedad: 16 años, 5 meses
Puntos: 69
Respuesta: Problema con consulta

Y esto: SELECT id_seccio FROM seccio WHERE visible = true que te arroja directo en el mysql??
__________________
La verdad es que lo que no quisiera dejar de hacer nunca (a parte de comer) es programar
  #11 (permalink)  
Antiguo 23/09/2010, 10:38
 
Fecha de Ingreso: enero-2005
Mensajes: 170
Antigüedad: 19 años, 3 meses
Puntos: 0
Respuesta: Problema con consulta

Esto:

id_seccio
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

etc hasta 33
  #12 (permalink)  
Antiguo 23/09/2010, 10:51
Avatar de Monimo  
Fecha de Ingreso: noviembre-2007
Ubicación: Mexico Df
Mensajes: 742
Antigüedad: 16 años, 5 meses
Puntos: 69
Respuesta: Problema con consulta

y así? echo("seccio:".$row['id_seccio']; o sea con una comilla simple x_x
__________________
La verdad es que lo que no quisiera dejar de hacer nunca (a parte de comer) es programar
  #13 (permalink)  
Antiguo 23/09/2010, 10:53
 
Fecha de Ingreso: enero-2005
Mensajes: 170
Antigüedad: 19 años, 3 meses
Puntos: 0
Respuesta: Problema con consulta

Nada :( :(
  #14 (permalink)  
Antiguo 23/09/2010, 12:45
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 20 años, 4 meses
Puntos: 89
Respuesta: Problema con consulta

Código PHP:
Ver original
  1. while ($row = mysql_fetch_array($result)>0)

¿Eso es válido? No me quiero aventurar a decir que no, pero me ha tocado decir que algo no es correcto, cuando si es posible
__________________
Nunca te olvidaré mi negra hermosa. Te extraño demasiado.
  #15 (permalink)  
Antiguo 23/09/2010, 22:41
Avatar de Monimo  
Fecha de Ingreso: noviembre-2007
Ubicación: Mexico Df
Mensajes: 742
Antigüedad: 16 años, 5 meses
Puntos: 69
Respuesta: Problema con consulta

Cita:
Iniciado por spider_boy Ver Mensaje
Código PHP:
Ver original
  1. while ($row = mysql_fetch_array($result)>0)

¿Eso es válido? No me quiero aventurar a decir que no, pero me ha tocado decir que algo no es correcto, cuando si es posible
Tienes razòn por eso no funciona.. lo probè sin el >0 y me corre...esperemos a que lo pruebe èl y ver si le funciona o no...
__________________
La verdad es que lo que no quisiera dejar de hacer nunca (a parte de comer) es programar
  #16 (permalink)  
Antiguo 24/09/2010, 02:30
 
Fecha de Ingreso: enero-2005
Mensajes: 170
Antigüedad: 19 años, 3 meses
Puntos: 0
Respuesta: Problema con consulta

Si!!!!! Era eso! No sé como no me había dado cuenta porque no tiene sentido!

Muchas gracias!

Etiquetas: Ninguno
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 14:51.