Foros del Web » Programando para Internet » PHP »

Ordenar Imagenes Con Db Mysql En Php

Estas en el tema de Ordenar Imagenes Con Db Mysql En Php en el foro de PHP en Foros del Web. WENO, hola a toos, y ojala puedan ayudarme en este lio resulta que con unos friends estamos haciendo una pagina (no daremos la reccion todavia ...
  #1 (permalink)  
Antiguo 28/12/2005, 17:21
 
Fecha de Ingreso: marzo-2005
Ubicación: stgo
Mensajes: 37
Antigüedad: 19 años, 1 mes
Puntos: 0
Ordenar Imagenes Con Db Mysql En Php

WENO, hola a toos, y ojala puedan ayudarme en este lio

resulta que con unos friends estamos haciendo una pagina (no daremos la reccion todavia por que la daremos cuando este lista) y ninguno de nosotros es un profesional en el asunto, solo yo que se un poco manejar eso del sql y el php.

tenemos una base de datos con una tabla llamada "imagenes", esta tienes datos, pero la imagenes no se almacenan ahi, sino que solo almacena las url's de donde estan originalmente, tiene 4 campos y...

al mostrarla en la pagina (imagenes.php) ponemnos el siguiente codigo:

<?php
if ($_POST[$mostrar] = "vista_previa")

{
$link = mysql_connect("hosting no se muestra", "no se muestra", "no se muestra");
mysql_select_db("no se muestra", $link);
$result = mysql_query("SELECT * from imagenes ORDER BY id DESC", $link);
if (!isset($pag)) $pag = 1; // defecto pagina 1
$result = mysql_query("SELECT COUNT(*) FROM imagenes ORDER BY id DESC", $link);
list($total) = mysql_fetch_row($result);
$tampag = 12;
$reg1 = ($pag-1) * $tampag;
$result = mysql_query("SELECT * FROM imagenes LIMIT $reg1, $tampag", $link);

while ($row = mysql_fetch_array($result) ) {
echo "<center>
<table width='420' align=center border='0' cellpadding='0' cellspacing='1'>
<tr><td><table width=140 bgcolor='#006699' cellspacing='1'><tr><td height='15' bgcolor='#E0E0E0'><font face='Arial, Helvetica, sans-serif' size=1>$row[3]</font></td></tr><tr>
<td height=100 bgcolor='#F0F0F0'><center><a href=$row[1]><img src=$row[2] alt='$row[1]' border='0' width=120 height=90></a></center></td>
</tr>
<tr><td height=20 background='table2.gif'><center>
<b><font face='Arial, Helvetica, sans-serif' size='1' color='#FFFFFF'>$row[1]</font></b>
</center></td></tr></table></td> </tr></table><br>
</center>";
}

}
?>

$row[1]=nombre
$row[2]=url
$row[3]=tipo

y muestra esto:



entonces necesito qu se muestre lo mismo, tal cual, pero mas ordenado como:



y no para abajo como en la primera imagen.

¿que diables se debe hacer, por que no sabemos como hacerlo?
  #2 (permalink)  
Antiguo 28/12/2005, 19:10
 
Fecha de Ingreso: julio-2005
Mensajes: 39
Antigüedad: 18 años, 8 meses
Puntos: 0
Este problema no es de PHP sino de HTML

Crea una tabla como la que quieres con el modo diseño de algun editor de paginas webs (Dreamweaver, FrontPage,...) y luego estudia el codigo resultante, pq creo q te estas liando con las etiquetas <table>,<tr> y <td>

Salu2
  #3 (permalink)  
Antiguo 28/12/2005, 19:14
 
Fecha de Ingreso: marzo-2005
Ubicación: stgo
Mensajes: 37
Antigüedad: 19 años, 1 mes
Puntos: 0
si, si se puede hacer eso, pero lo que pasa es que las filas de 3 en 3, van hacia abajo, osea:

O O O <-- NO SOLO ESO
O O O
O O O
O O O

entendeis??
  #4 (permalink)  
Antiguo 28/12/2005, 19:40
 
Fecha de Ingreso: julio-2005
Mensajes: 39
Antigüedad: 18 años, 8 meses
Puntos: 0
Te ayudo de novato a novato pq yo no llevo demasiado en esto, pero veo el caso es q te veo algo perdido en HTML ademas de en PHP, pq tienes demasiado lio de tablas, además de etiquetas sin cierre. Yo englobaría todo en una única tabla, e iría añadiendo con un bucle "for" por ejemplo cada fila.

Código PHP:
    for ($n=1$n<=48$n=$n+12){
        echo 
"<tr><td>".$row[$n]."</td><td>".$row[$n+4]."</td><td>".$row[$n+8]."</td></tr>";
    } 
Incluyendo mas lineas dentro del bucle podrias generar tb la imagen y demás. Espero que te sirva de ayuda.
  #5 (permalink)  
Antiguo 29/12/2005, 06:02
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Tienes una FAQ al respecto para "armar" una tabla HTML dinámicamente:

http://www.forosdelweb.com/showthrea...669#post240669

Un saludo,
  #6 (permalink)  
Antiguo 29/12/2005, 15:30
 
Fecha de Ingreso: marzo-2005
Ubicación: stgo
Mensajes: 37
Antigüedad: 19 años, 1 mes
Puntos: 0
???????

SI, ese script sirve, pero lo que haces ahi es mostrar campos de la tabla, osea $row[$n] ($n va aumentando), pero esta tabla tiene solo 4 campos, y lo que debiera pasar es:

000 // 3 primeras filas
000 // Proximas 3
000

0 = debe mostrar 3 campos ($row[0], 1 y 3) c/u

no se si se entiende pero, es lo mejor que me puedo explicar
  #7 (permalink)  
Antiguo 29/12/2005, 16:32
 
Fecha de Ingreso: diciembre-2005
Mensajes: 165
Antigüedad: 18 años, 3 meses
Puntos: 4
Creo que te entiendo. Mira, referente al script anterior, funciona perfectamente, para hacer lo que tu quieres, donde pone:

echo "<td>$row[1]</td>";

lo sustituyes por:

echo "<td>";

...aqui to el rollo que quieras mostrar...

echo "</td>";

Hata luego ;)

Última edición por Cubatron; 29/12/2005 a las 16:38
  #8 (permalink)  
Antiguo 29/12/2005, 16:38
 
Fecha de Ingreso: diciembre-2005
Mensajes: 165
Antigüedad: 18 años, 3 meses
Puntos: 4
Algo asi deberia quedarte:

echo "<td>";

echo "<center>
<table width='420' align=center border='0' cellpadding='0' cellspacing='1'>
<tr><td><table width=140 bgcolor='#006699' cellspacing='1'><tr><td height='15' bgcolor='#E0E0E0'><font face='Arial, Helvetica, sans-serif' size=1>$row[3]</font></td></tr><tr>
<td height=100 bgcolor='#F0F0F0'><center><a href=$row[1]><img src=$row[2] alt='$row[1]' border='0' width=120 height=90></a></center></td>
</tr>
<tr><td height=20 background='table2.gif'><center>
<b><font face='Arial, Helvetica, sans-serif' size='1' color='#FFFFFF'>$row[1]</font></b>
</center></td></tr></table></td> </tr></table><br>
</center>";

echo "</td>";
  #9 (permalink)  
Antiguo 30/12/2005, 16:30
 
Fecha de Ingreso: marzo-2005
Ubicación: stgo
Mensajes: 37
Antigüedad: 19 años, 1 mes
Puntos: 0
pos la verda, que paece que eso no me ayuda, es que ese codigo te muestra los campos de la tabla, y no los resultados hacia anajo, por por eso no me sirve.
  #10 (permalink)  
Antiguo 30/12/2005, 17:21
 
Fecha de Ingreso: diciembre-2005
Mensajes: 165
Antigüedad: 18 años, 3 meses
Puntos: 4
No se a que te refieres
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 04:32.