Problemas al imprimir IDs de filas en consulta SQL [PHP]

  • Autor Autor Facundo
  • Fecha de inicio Fecha de inicio
F

Facundo

Xi
Estoy dando vueltas con esto desde temprano y la verdad no se en que le estoy pifiando.

Hago una consulta, esa consulta me arroja una cantidad X de filas y necesito acceder a los datos.

Tengo este código que hice de ejemplo, que me da error:

PHP:
$SQL_PARTIDOS= mysql_query("SELECT * FROM partido WHERE jugador_a='".$ROW['id']."' OR jugador_b='".$ROW['id']."' LIMIT 0,15");    /Hasta acá no hay drama            
$AUX=mysql_fetch_array($SQL_PARTIDOS);           
 foreach ($AUX as $FILA)  {                
echo $FILA['id'];           
 }

Al hacer echo $FILA['id'] osea, para imprimir los ID´s de cada fila, me tira error:

Warning: Illegal string offset 'id' in...


Sin embargo, si yo imprimo solo el valor de $FILA, me va imprimiendo todos los campos de un array. Osea, me estoy moviendo sobre los elementos de un solo array y no sobre un conjunto de arrays como me devuelve la consulta sql (la probé en phpmyadmin y la consulta funciona lo más bien.



Seguramente sera una boludes, pero no logro encontrar en que me equivoco :S


Saludos!
 
mmmmm

PHP:
$SQL_PARTIDOS= mysql_query("SELECT * FROM partido WHERE jugador_a='".$ROW['id']."' OR jugador_b='".$ROW['id']."' LIMIT 0,15");           
$AUX=mysql_fetch_assoc($SQL_PARTIDOS);    
while($FILA = mysql_fetch_assoc($AUX)) {       
echo $FILA['id'];           
 }
 
Devuelve:

Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, array given in

🙁
 
Devuelve:

Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, array given in

🙁


cambia
PHP:
mysqli_fetch_assoc


por

PHP:
mysql_fetch_assoc


---------- Post agregado el 28-mar-2013 hora: 02:55 ----------

espera me equivoque

cambia lo que te dije por esto

PHP:
$SQL_PARTIDOS= mysql_query("SELECT * FROM partido WHERE jugador_a='".$ROW['id']."' OR jugador_b='".$ROW['id']."' LIMIT 0,15");           
while($FILA = mysql_fetch_assoc($SQL_PARTIDOS)) {       
echo $FILA['id'];           
 }
 
Listo, ya se arregló al parecer.


PHP:
$SQL_PARTIDOS= mysql_query("SELECT * FROM partido WHERE jugador_a='".$ROW['id']."' OR jugador_b='".$ROW['id']."' LIMIT 0,15");   
            while($FILA = mysql_fetch_assoc($SQL_PARTIDOS)) {   
    echo $FILA['lugar'];           
 }

Me tiraba que le había dado un array en vez de un recurso, porque si agrego la línea //$AUX=mysql_fetch_assoc($SQL_PARTIDOS); ya convierto lo convierto en un array y después intento convertirlo de nuevo.


Gracias !
 
Listo, ya se arregló al parecer.


PHP:
$SQL_PARTIDOS= mysql_query("SELECT * FROM partido WHERE jugador_a='".$ROW['id']."' OR jugador_b='".$ROW['id']."' LIMIT 0,15");   
            while($FILA = mysql_fetch_assoc($SQL_PARTIDOS)) {   
    echo $FILA['lugar'];           
 }

Me tiraba que le había dado un array en vez de un recurso, porque si agrego la línea //$AUX=mysql_fetch_assoc($SQL_PARTIDOS); ya convierto lo convierto en un array y después intento convertirlo de nuevo.


Gracias !

si xD no me di cuenta que no elimine eso:ambivalence: 😎😎😎
 
Entonces, la función

mysql_fetch_array()

Solo devuelve un array (me imagino que el primer resultado) ?

La verdad es que no entendía por que no andaba, en muchos lados podían esa función para usar en un foreach para recorrer resultados
 
Entonces, la función

mysql_fetch_array()

Solo devuelve un array (me imagino que el primer resultado) ?

La verdad es que no entendía por que no andaba, en muchos lados podían esa función para usar en un foreach para recorrer resultados


mysql_fetch_array — Recupera una fila de resultados como un array asociativo, un array numérico o como ambos

aunque ya deverias usar mysqli, es lo que recomienda php.net

PHP: mysql_fetch_array - Manual
 
Si, ese cartel lo vi cuando entraba a ver como funcionaba la función.

AUnque la verdad, es que ya hice bastante, ni ganas de cambiar todo hoy xD
 

Temas similares

dany_danay
  • Cerrado
Se solicita Consulta sql+php
Respuestas
6
Visitas
305
dany_danay
dany_danay
Atrás
Arriba