Foros del Web » Programando para Internet » PHP »

Tabla en la que mostrar en 3 columnas datos con php y mysql

Estas en el tema de Tabla en la que mostrar en 3 columnas datos con php y mysql en el foro de PHP en Foros del Web. Buenos días, Estoy intentando mostrar contenido en una tabla con 3 columnas y 3 filas. Ejemplo: Audi Audi Audi Gasolina Gasolina Gasolina 10000 10000 10000 ...
  #1 (permalink)  
Antiguo 29/11/2010, 04:15
 
Fecha de Ingreso: noviembre-2009
Mensajes: 21
Antigüedad: 14 años, 4 meses
Puntos: 0
Pregunta Tabla en la que mostrar en 3 columnas datos con php y mysql

Buenos días,

Estoy intentando mostrar contenido en una tabla con 3 columnas y 3 filas.

Ejemplo:

Audi Audi Audi
Gasolina Gasolina Gasolina
10000 10000 10000
________________________________________

Audi Audi Audi
Gasolina Gasolina Gasolina
10000 10000 10000
________________________________________

No consigo que se muestre de este modo, yo solo se poner que se muestre en filas, una de bajo de la otra.

Alguien me podría ayudar??

Estado buscando por google y no encontrado nada...

Muchas gracias de antelación
  #2 (permalink)  
Antiguo 29/11/2010, 04:22
 
Fecha de Ingreso: marzo-2010
Ubicación: Barcelona
Mensajes: 657
Antigüedad: 14 años, 1 mes
Puntos: 26
Respuesta: Tabla en la que mostrar en 3 columnas datos con php y mysql

Esta seria la forma de la tabla con 3 filas 3 columnas con lo que pides.
Código HTML:
<table>
 <tr>
  <td>Audi</td><td>Audi </td><td>Audi </td>
 </tr>
 <tr>
  <td>Gasolina </td><td>Gasolina </td><td>Gasolina </td>
 </tr>
 <tr>
  <td>10000 </td><td>10000 </td><td>10000 </td>
 </tr>
</table> 
A ver si es lo que pedias.
__________________
Siempre fallaras el 100% de los tiros que no te atrevas a lanzar.
El 98% de los adolescentes han fumado, si eres del dichoso 2% que no lo ha hecho, copia y pega esto en tu firma.
  #3 (permalink)  
Antiguo 29/11/2010, 04:33
 
Fecha de Ingreso: noviembre-2009
Mensajes: 21
Antigüedad: 14 años, 4 meses
Puntos: 0
Pregunta Respuesta: Tabla en la que mostrar en 3 columnas datos con php y mysql

Buenas, gracias por tu respuesta.

No es algo más complicado, igual me explicado mal, es complicado la verdad.

La cosa es que descarga de una base de datos los datos que quiero mostrar

y solo consigo mostrarlos que se genere en filas, lo que quiero mostrar es 9 coches diferentes, con su marca, gasolina y precio.

Que se muestren 3 coches debajo otros 3 y debajo otros 3.

Este es el cogido que estoy trabajando, pero no sale como quiero..

Código PHP:
  <tr>
    <td><?php 
                    
include("includes/conexion.php");
                    
$sql="SELECT * FROM coches, combustible WHERE coches.Cod_combustible=combustible.Cod_combustible ORDER BY Fecha_entrada";
                    
$resultado=mysql_query($sql);
                    while(
$fila=mysql_fetch_array($resultado)){
                      
?>
        

<?php
echo "<table width=\"820\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">
<tr>
<td rowspan=\"2730\" align=\"left\" valign=\"top\">"
.$fila['Foto1']."</td>

</tr>
<tr>

</table>"
;
?>
<?  
mysql_close()
?>
Muchas gracias y un saludo
  #4 (permalink)  
Antiguo 29/11/2010, 05:14
 
Fecha de Ingreso: marzo-2010
Ubicación: Barcelona
Mensajes: 657
Antigüedad: 14 años, 1 mes
Puntos: 26
Respuesta: Tabla en la que mostrar en 3 columnas datos con php y mysql

Te paso un código hecho rápido y sin ninguna comprobación ni nada por el estilo. Así que casi al 100% dará algun error, y ahún así no te aseguro que haga lo que pidas, aunque debería. Lo pruebas y me dices como fué:

Código PHP:
<?php
$sql
="SELECT * FROM coches, combustible WHERE coches.Cod_combustible=combustible.Cod_combustible ORDER BY Fecha_entrada"
$resultado=mysql_query($sql); 
$n=0;
while(
$fila=mysql_fetch_array($resultado)){ 
    
$arr[$n]=$fila;
    
$n++;
}
$x=0;
for(
$i=0;$i<3;$i++){                      
echo 
"<table>
 <tr>
  <td>$arr[$x]['nombre_coche']</td><td>$arr[$x+1]['nombre_coche']</td><td>$arr[$x+2]['nombre_coche']</td>
 </tr>
 <tr>
  <td>$arr[$x]['gasolina']</td><td>$arr[$x+1]['gasolina']</td><td>$arr[$x+2]['gasolina']</td>
 </tr>
 <tr>
  <td>$arr[$x]['precio']</td><td>$arr[$x+1]['precio']</td><td>$arr[$x+2]['precio']</td>
 </tr>
</table>"
;
$x=$x+3;
mysql_close() ?>
__________________
Siempre fallaras el 100% de los tiros que no te atrevas a lanzar.
El 98% de los adolescentes han fumado, si eres del dichoso 2% que no lo ha hecho, copia y pega esto en tu firma.
  #5 (permalink)  
Antiguo 29/11/2010, 05:36
 
Fecha de Ingreso: noviembre-2009
Mensajes: 21
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: Tabla en la que mostrar en 3 columnas datos con php y mysql

Buenas gracias por tu ayuda, lo meto pero me da fallo en la zona de las tablas, da error en cada tr, no la razón.

Código PHP:
<?php 

$sql
="SELECT * FROM coches, combustible WHERE coches.Cod_combustible=combustible.Cod_combustible ORDER BY Fecha_entrada"
$resultado=mysql_query($sql); 
$n=0;
while(
$fila=mysql_fetch_array($resultado)){ 
    
$arr[$n]=$fila;
    
$n++;
}
$x=0;
for(
$i=0;$i<3;$i++){                      
echo 
"<table>
 <tr>
  <td>$arr[$x]['Marca']</td>
  <td>$arr[$x+1]['Marca']</td>
  <td>$arr[$x+2]['Marca']</td>
 </tr>
 <tr>
  <td>$arr[$x]['Combustible']</td>
  <td>$arr[$x+1]['Combustible']</td>
  <td>$arr[$x+2]['Combustible']</td>
 </tr>
 <tr>
  <td>$arr[$x]['Combustible']</td>
  <td>$arr[$x+1]['Combustible']</td>
  <td>$arr[$x+2]['Combustible']</td>
 </tr>
</table>"
;
$x=$x+3;
mysql_close() 

?>
  #6 (permalink)  
Antiguo 29/11/2010, 05:43
 
Fecha de Ingreso: marzo-2010
Ubicación: Barcelona
Mensajes: 657
Antigüedad: 14 años, 1 mes
Puntos: 26
Respuesta: Tabla en la que mostrar en 3 columnas datos con php y mysql

Prueba con:
Código PHP:
echo "<table><tr>";
echo 
"<td>$arr[$x]['Marca']</td>";
echo 
"<td>$arr[$x+1]['Marca']</td>";
echo 
"<td>$arr[$x+2]['Marca']</td>";
echo 
"</tr><tr>";
echo 
"<td>$arr[$x]['Combustible']</td>";
echo 
"<td>$arr[$x+1]['Combustible']</td>";
echo 
"<td>$arr[$x+2]['Combustible']</td>";
echo 
"</tr><tr>";
echo 
"<td>$arr[$x]['Combustible']</td>";
echo 
"<td>$arr[$x+1]['Combustible']</td>";
echo 
"<td>$arr[$x+2]['Combustible']</td>";
echo 
"</tr></table>"
__________________
Siempre fallaras el 100% de los tiros que no te atrevas a lanzar.
El 98% de los adolescentes han fumado, si eres del dichoso 2% que no lo ha hecho, copia y pega esto en tu firma.
  #7 (permalink)  
Antiguo 29/11/2010, 05:59
 
Fecha de Ingreso: noviembre-2009
Mensajes: 21
Antigüedad: 14 años, 4 meses
Puntos: 0
Pregunta Respuesta: Tabla en la que mostrar en 3 columnas datos con php y mysql

El fallo da en las lineas

[x+1]
[x+2]

Supongo que por el numero.

Estoy provando con la modificación:

Código PHP:
Ver original
  1. <?php
  2. include("includes/conexion.php");
  3. $sql="SELECT * FROM coches, combustible WHERE coches.Cod_combustible=combustible.Cod_combustible ORDER BY Fecha_entrada";
  4. $resultado=mysql_query($sql);
  5. $n=0;
  6. while($fila=mysql_fetch_array($resultado)){
  7.     $arr[$n]=$fila;
  8.     $n++;
  9. }
  10. $x=0;
  11. for($i=0;$i<3;$i++){                      
  12. echo "<table><tr>";
  13. echo "<td>$arr[$x]['Marca']</td>";
  14. echo "<td>$arr[$x]+1['Marca']</td>";
  15. echo "<td>$arr[$x]+2['Marca']</td>";
  16.  
  17. echo "</tr><tr>";
  18. echo "<td>$arr[$x]['Combustible']</td>";
  19. echo "<td>$arr[$x]+1['Combustible']</td>";
  20. echo "<td>$arr[$x]+2['Combustible']</td>";
  21.  
  22. echo "</tr><tr>";
  23. echo "<td>$arr[$x]['Precio']</td>";
  24. echo "<td>$arr[$x]+2['Precio']</td>";
  25. echo "<td>$arr[$x]+3['Precio']</td>";
  26. echo "</tr></table>";
  27. $x=$x+3;
  28.  
  29. ?>

Ahora no me saca los valores de la base de datos, estoy probando el porque.

haber si lo consigo y te digo algo.

gracias por la ayuda


Me muestra esto:


Array['Marca'] Array+1['Marca'] Array+2['Marca']
Array['Combustible'] Array+1['Combustible'] Array+2['Combustible']
Array['Precio'] Array+1['Precio'] Array+2['Precio']
Array['Marca'] Array+1['Marca'] Array+2['Marca']
Array['Combustible'] Array+1['Combustible'] Array+2['Combustible']
Array['Precio'] Array+1['Precio'] Array+2['Precio']
['Marca'] +1['Marca'] +2['Marca']
['Combustible'] +1['Combustible'] +2['Combustible']
['Precio'] +1['Precio'] +2['Precio']
  #8 (permalink)  
Antiguo 29/11/2010, 06:05
 
Fecha de Ingreso: marzo-2010
Ubicación: Barcelona
Mensajes: 657
Antigüedad: 14 años, 1 mes
Puntos: 26
Respuesta: Tabla en la que mostrar en 3 columnas datos con php y mysql

Antes que nada, haz un print_r($arr); antes de comenzar con las tablas y tal. A ver que imprime.

Mira aqui dejo un ejemplo donde se utiliza también $arr[$variable+algo]:

Código PHP:
$emp2[0]="Abril";
$emp2[1]="Mayo";
$emp2[2]="Junio";
$emp2[3]="Julio";
$emp2[4]="Agosto";
$emp2[5]="Septiembre";

$n=1;
$arr[$n]=$emp2;
echo 
$arr[1][$n+3]."<br>";
print_r($arr); 
A mi este me funciona correctamente.
Por cierto "$arr[$x]+2['Precio']", como pones, a mi punto de vista no tiene sentido alguno. Creo que con eso petará siempre
__________________
Siempre fallaras el 100% de los tiros que no te atrevas a lanzar.
El 98% de los adolescentes han fumado, si eres del dichoso 2% que no lo ha hecho, copia y pega esto en tu firma.

Última edición por Vallu; 29/11/2010 a las 06:17
  #9 (permalink)  
Antiguo 29/11/2010, 06:20
 
Fecha de Ingreso: noviembre-2009
Mensajes: 21
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: Tabla en la que mostrar en 3 columnas datos con php y mysql

Saca contenido de las tablas,


Array['Marca'] Array+1['Marca'] Array+2['Marca']
Array['Combustible'] Array+1['Combustible'] Array+2['Combustible']
Array['Precio'] Array+1['Precio'] Array+2['Precio']
Array ( [0] => Array ( [0] => 6 [Cod_coche] => 6 [1] => 7 [Cod_marca] => 7 [2] => [Modelo] => [3] => 1 [Cod_combustible] => 1 [4] => 1 [Potencia] => 1 [5] => 1 [Cod_cambios] => 1 [6] => fdsfsdf [Color] => fdsfsdf [7] => 12321 [Matriculacion] => 12321 [8] => 312321 [Kilometros] => 312321 [9] => [Comentarios] => [10] => 123123 [Precio] => 123123 [11] => coche_6.jpg [Foto1] => coche_6.jpg [12] => coche_6.jpg [Foto2] => coche_6.jpg [13] => coche_6.jpg [Foto3] => coche_6.jpg [14] => [Fecha_entrada] => [15] => [activo] => [16] => 1 [17] => Diesel [Combustible] => Diesel ) [1] => Array ( [0] => 1 [Cod_coche] => 1 [1] => 1 [Cod_marca] => 1 [2] => A4 Avant 2.0 TDI [Modelo] => A4 Avant 2.0 TDI [3] => 2 [Cod_combustible] => 2 [4] => 155 [Potencia] => 155 [5] => 1 [Cod_cambios] => 1 [6] => Verde [Color] => Verde [7] => 32423423 [Matriculacion] => 32423423 [8] => 120000 [Kilometros] => 120000 [9] => esta genial [Comentarios] => esta genial [10] => 12000 [Precio] => 12000 [11] => coche.jpg [Foto1] => coche.jpg [12] => coche.jpg [Foto2] => coche.jpg [13] => coche.jpg [Foto3]..............

y sique..

Última edición por meija; 29/11/2010 a las 06:25
  #10 (permalink)  
Antiguo 29/11/2010, 06:31
 
Fecha de Ingreso: marzo-2010
Ubicación: Barcelona
Mensajes: 657
Antigüedad: 14 años, 1 mes
Puntos: 26
Respuesta: Tabla en la que mostrar en 3 columnas datos con php y mysql

Vale, o sea que $arr, contiene lo que sacas por el sql, correcto?
Sale la información correcta? y sale de la forma $arr[1]--> Toda la informacion del 1º coche, etc?

Por cierto, el sql yo lo pondrias mas restrictivo, es decir, si solo utilizas 3 datos del coche, no hagas un select all, si no un select de los 3 campos. Y si solo quieres 9 vehículos haz un LIMIT 9.

PD: Acuerdate de volver a poner dentro de los claudators los +1 y +2
__________________
Siempre fallaras el 100% de los tiros que no te atrevas a lanzar.
El 98% de los adolescentes han fumado, si eres del dichoso 2% que no lo ha hecho, copia y pega esto en tu firma.
  #11 (permalink)  
Antiguo 29/11/2010, 07:15
 
Fecha de Ingreso: noviembre-2009
Mensajes: 21
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: Tabla en la que mostrar en 3 columnas datos con php y mysql

No puedo meter el +1 y el +2 dentro del $arr[$x] da error, e probado quitando la tabla ..

echo "$arr[$x]['Marca']";
echo "($arr[$x]+[1]).$fila['Marca']";
echo "($arr[$x]+[1])['Marca']";

echo "$arr[$x]['Combustible']";
echo "($arr[$x]+[1])['Combustible']";
echo "($arr[$x]+[1])['Combustible']";

echo "$arr[$x]['Precio']";
echo "($arr[$x]+[1])['Precio']";
echo "$($arr[$x]+[1])['Precio']";

y nada da error.

No tengo ni idea de donde esta el error y esta tan cerca de que salga bien...
  #12 (permalink)  
Antiguo 30/11/2010, 03:57
 
Fecha de Ingreso: marzo-2010
Ubicación: Barcelona
Mensajes: 657
Antigüedad: 14 años, 1 mes
Puntos: 26
Respuesta: Tabla en la que mostrar en 3 columnas datos con php y mysql

Pues nada, crea dos variables mas y las incrementas para no hacer lo de +1 y +2.
A ver si ahora funciona.
Código PHP:
$x=0
for(
$i=0;$i<3;$i++){
$y=$x+1;                       
$z=$x+2;
echo 
"<table> 
 <tr> 
  <td>$arr[$x]['Marca']</td> 
  <td>$arr[$y]['Marca']</td> 
  <td>$arr[$z]['Marca']</td> 
 </tr> 
 <tr> 
  <td>$arr[$x]['Combustible']</td> 
  <td>$arr[$y]['Combustible']</td> 
  <td>$arr[$z]['Combustible']</td> 
 </tr> 
 <tr> 
  <td>$arr[$x]['Combustible']</td> 
  <td>$arr[$y]['Combustible']</td> 
  <td>$arr[$z]['Combustible']</td> 
 </tr> 
</table>"

$x=$x+3

__________________
Siempre fallaras el 100% de los tiros que no te atrevas a lanzar.
El 98% de los adolescentes han fumado, si eres del dichoso 2% que no lo ha hecho, copia y pega esto en tu firma.
  #13 (permalink)  
Antiguo 30/11/2010, 11:37
 
Fecha de Ingreso: noviembre-2009
Mensajes: 21
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: Tabla en la que mostrar en 3 columnas datos con php y mysql

Buenas de nuevo, bien pongo eso y sale bien.

Array['Marca'] Array['Marca'] Array['Marca']
Array['Combustible'] Array['Combustible'] Array['Combustible']
Array['Kilometros'] Array['Kilometros'] Array['Kilometros']
Array['Marca'] Array['Marca'] Array['Marca']
Array['Combustible'] Array['Combustible'] Array['Combustible']
Array['Kilometros'] Array['Kilometros'] Array['Kilometros']
['Marca'] ['Marca'] ['Marca']
['Combustible'] ['Combustible'] ['Combustible']
['Kilometros'] ['Kilometros'] ['Kilometros']

Sale así pero ahora poco ago para que se muestren los datos de la base de datos??
Se muestran las 3 columnas como queria, muchas gracias. Me falte que muestre los datos de la tabla y no consigo como los muestre.


Muchas gracias d neuvo
  #14 (permalink)  
Antiguo 30/11/2010, 11:41
 
Fecha de Ingreso: noviembre-2009
Mensajes: 21
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: Tabla en la que mostrar en 3 columnas datos con php y mysql

Asi es como lo tengo:
<?php
require("includes/conexion.php");
$sql="SELECT * FROM coches, combustible WHERE coches.Cod_combustible=combustible.Cod_combustible ORDER BY Fecha_entrada";
$resultado=mysql_query($sql);
$x=0;
while($fila=mysql_fetch_array($resultado)){
$arr[$x]=$fila;
$x++;
}
echo $fila['Marca'];

$x=0;
for($i=0;$i<3;$i++){
$y=$x+1;
$z=$x+2;
echo "<table>
<tr>

<td>$arr[$x]['Marca']</td>
<td>$arr[$y]['Marca']</td>
<td>$arr[$z]['Marca']</td>
</tr>
<tr>
<td>$arr[$x]['Combustible']</td>
<td>$arr[$y]['Combustible']</td>
<td>$arr[$z]['Combustible']</td>
</tr>
<tr>
<td>$arr[$x]['Kilometros']</td>
<td>$arr[$y]['Kilometros']</td>
<td>$arr[$z]['Kilometros']</td>

</tr>
</table>";
$x=$x+3;
}

?>
  #15 (permalink)  
Antiguo 01/12/2010, 02:38
 
Fecha de Ingreso: noviembre-2009
Mensajes: 21
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: Tabla en la que mostrar en 3 columnas datos con php y mysql

Lo que me gustaria consegir es algo similar a esto:

en donde muestra 6 coches, en 3 columknas y 2 filas
http://www.coches.net/nuevos/

Llevo ya varios dias intentando sacarlo y no hay manera, alguien me podria ayudar??



muchisimas gracias
  #16 (permalink)  
Antiguo 01/12/2010, 04:36
 
Fecha de Ingreso: noviembre-2009
Mensajes: 21
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: Tabla en la que mostrar en 3 columnas datos con php y mysql

Casual mente e puesto

<table> <td></td</table

y ahora sale todo en horizontal pero la idea es que se muestren solo tres columnas por fila mi actual codigo es:

Código PHP:
<table width="800" height="800">
                      
                    <?php  
                    
                    
include("includes/conexion.php");
                    
$sql="SELECT * FROM coches, combustible WHERE coches.Cod_combustible=combustible.Cod_combustible ORDER BY Fecha_entrada LIMIT 9";
                    
$resultado=mysql_query($sql);
                    while(
$fila=mysql_fetch_array($resultado)){
                      
?>
        
            
            
            <td>
            <a href="ficha_coche.php"><img src="img/<?php echo $fila["Foto1"]; ?>" width="250" height="167" border="0" /></a>
            <p>&nbsp;</p>
            <p class="titulo_coche"><strong><?php echo $fila["Modelo"]; ?></strong></p>
            <p>- <?php echo $fila["Kilometros"]; ?></p>
            <p>- <?php echo $fila["Combustible"]; ?></p>
            <p>&nbsp;</p>
            <p class="precio"><strong><?php echo $fila["Precio"]; ?></strong></p>
            </td>
            <?php 
                  
}
                  
mysql_close();
                
?>
     
            </table>

Alguien me puede ayudar a solucionar el problema?? muchas gracias y un saludo
  #17 (permalink)  
Antiguo 02/12/2010, 03:29
 
Fecha de Ingreso: marzo-2010
Ubicación: Barcelona
Mensajes: 657
Antigüedad: 14 años, 1 mes
Puntos: 26
Respuesta: Tabla en la que mostrar en 3 columnas datos con php y mysql

Ponlo de esta forma y te saldrá:
Código PHP:
echo "<table><tr>";
echo 
"<td>".$arr[$x]['Marca']."</td>"
echo 
"<td>".$arr[$y]['Marca']."</td>"
echo 
"<td>".$arr[$z]['Marca']."</td>"
.... 
Por lo menos a mí me sale. :P
__________________
Siempre fallaras el 100% de los tiros que no te atrevas a lanzar.
El 98% de los adolescentes han fumado, si eres del dichoso 2% que no lo ha hecho, copia y pega esto en tu firma.

Última edición por Vallu; 02/12/2010 a las 04:45

Etiquetas: columnas, mysql, tablas
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 02:48.