Estoy aprendiendo a hacer cosillas con php y bases de datos, y haciendo una página para registrar mis juegos de mesa tengo un problema que no se por donde viene.
Tengo una página que lo que hace ( o debería) es mostrarme una tabla con los datos que le pido a la db. Ejecutando la consulta directamente en la db el resultado sigue este estilo
'Blood Rage'| 'Eric M. Lang'| '2-4'| '45-60'| 'Eurogame'|
A continuación la consulta que me devuelve ese resultado:
Código MySQL:
Ver original
Sin embargo cuándo lo hago desde el código php siguiente:
Código PHP:
$tabla = mysql_query("select autor.nombre, rango_jugadores.rango, rango_tiempo.rangot, juego.nombre, expan.nombre from expan
inner join autor on expan.id_autor2=autor.id_autor
inner join rango_jugadores on expan.id_rango_jugadores2=rango_jugadores.id_rango_jugadores
inner join rango_tiempo on expan.id_rango_tiempo2=rango_tiempo.id_rango_tiempo
inner join juego on expan.id_juego1=juego.id_juego;");
echo "<table>\n";
while ($line = mysql_fetch_array($tabla, MYSQL_ASSOC)){
echo "\t<tr>\n";
foreach ($line as $linea){
echo "\t\t<td>$linea</td>\n";
};
echo "\t</tr>\n";
}
echo "</table>\n";
Eric M. Lang 2-4 45-60 Eurogame
Como se puede ver, se "come" la primera columna que tendría que mostrar, y no tengo ni la mas remota idea de porque lo hace.
Para aclarar, el bucle que crea la tabla en php lo encontré por internet, y me funcionó en varias pruebas sin ningún problema, hasta que la implementé aquí.
(con otra parte en la que hace lo mismo, pero con otra tabla se come más de una columna.)
A ver si alguien me puede ayudar a encontrar mi columna perdida.