elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Estamos en la red social de Mastodon


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  Tantos div como salidas de una consulta
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Tantos div como salidas de una consulta  (Leído 3,944 veces)
bgnumis

Desconectado Desconectado

Mensajes: 155


Ver Perfil
Tantos div como salidas de una consulta
« en: 8 Octubre 2017, 19:03 pm »

Hola,

A ver si me podéis ayudar. Tengo una tabla de productos y otra tabla de imágenes (en productos está id, idproducto, titulo, descripcion, precio, ideusuario, fechareg). En imágenes está id, idproducto, file, fechareg.

La cuestión es que en la web quisiera que me mostrara el siguiente código pero por cada producto que esté en la tabla productos (cuyas imágenes están en imágenes). El tema es que como los usuarios insertarán productos yo se que los productos son "n" pero no sé cuantos:

Código
  1.  
  2.  
  3. <div class="col-sm-6 col-md-3">
  4.            <div class="thumbnail">
  5.              <a href="#"><img src="img/img-default.jpg" alt="Titulo del objeto"></a>
  6.              <div class="caption">
  7.                <div class="caption">
  8.                                <h4 class="pull-right">$24.99</h4>
  9.                                <h4><a href="#">First Product</a>
  10.                                </h4>
  11.                                <p>See more snippets like this online store item at <a target="_blank" href="http://www.bootsnipp.com">Bootsnipp - http://bootsnipp.com</a>.</p>
  12.                                  </div>
  13.                </div>
  14.  
  15.                             <p class="text-center">
  16.                  <a href="#" class="btn btn-azul" role="button">Ver producto</a>
  17.                  <a href="#" class="btn btn-naranja" role="button">Lista de deseos</a>
  18.                </p>
  19.            </div>
  20.          </div>
  21.  
  22.  
  23.  


¿Entiendo que para que me salga este bloque para cada producto debo utilizar un for o un while? ¿debería unir la tabla productos con imágenes?

Lo que quiero es que por cada bucle me saque en img/img-default.jpg la imagen de imagénes del producto "i" donde pone $24.99 (que ponga el precio del producto de la tabla productos asociado a la imagen y usuario que lo ha insertado) así como la descripción etc.

Espero haberme explicado, a ver si me podéis decir si este bucle que me "muestre" tantos productos (con el código de arriba) como hay en la tabla productos .

Estoy leyendo sobre ello pero si alguien me puede ayudar un poco bienvenido sea.

Muchas Gracias



Hola a ver si me podéis ayudar:

Hago esta consulta
Código
  1. $busqueda=mysql_query("SELECT * FROM productos") ;

Y si en el código pongo

Código
  1.  
  2. <?php
  3.  
  4.  
  5.  while($muestra=@mysql_fetch_array($busqueda)){
  6.  
  7.  
  8.  
  9.    ?>
  10.     <div class="col-sm-6 col-md-3">
  11.            <div class="thumbnail">
  12.              <a href="#"><img src="img/img-default.jpg" alt="Titulo del producto"></a>
  13.              <div class="caption">
  14.                <div class="caption">
  15.                                <h4 class="pull-right">$24.99</h4>
  16.                                <h4><a href="#">First Product</a>
  17.                                </h4>
  18.                                <p> <?php echo $muestra['descripcion']; ?> <a target="_blank" href="http://www.bootsnipp.com">Bootsnipp - http://bootsnipp.com</a>.</p>
  19.                                  </div>
  20.                </div>
  21.  
  22.                             <p class="text-center">
  23.                  <a href="#" class="btn btn-azul" role="button">Ver producto</a>
  24.                  <a href="#" class="btn btn-naranja" role="button">Lista de deseos</a>
  25.                </p>
  26.            </div>
  27.          </div>
  28.  
  29.  
  30.  
  31.  
  32. <?php
  33.   }
  34.  
  35. ?>
  36.  
  37.  
  38.  
  39.  

Sí que me muestra de cada producto la descripción. La duda viene aquí;

Si las imágenes de cada producto están en otra tabla imágenes y el campo que tienen en común es el idproducto ¿Cómo hago para que aparezcan? Estoy intentando un echo pero no lo consigo.

Si hubiera más de una imagen por idproducto, el siguiente paso será buscar como hacer ahí un rolling de imágenes.

A ver si alguno puede ayudarme.




Ah, mi idea es que todas las imágenes independientemente de su tamaño original y extensión ocupen un tamaño determinado 100px por 100px por ejemplo. A ver si me podéis dar alguna pista.


Mod: No hacer triple post.


« Última modificación: 9 Octubre 2017, 17:23 pm por #!drvy » En línea

#!drvy
Moderador
***
Desconectado Desconectado

Mensajes: 5.855



Ver Perfil WWW
Re: Tantos div como salidas de una consulta
« Respuesta #1 en: 9 Octubre 2017, 17:21 pm »

- No hagas doble post ni triple ni cuádruple. Esta en contra de las reglas del foro.
- Los temas sobre PHP, van al subforo de PHP. De nuevo, esta indicado en las reglas del foro.
- El uso de mysql_query esta desaconsejado pues es una librería que ya no recibe soporte y ha sido eliminada en versiones posteriores a PHP 5.

[Obligatorio] Normas del subforo de Desarrollo Web.
https://foro.elhacker.net/desarrollo_web/obligatorio_normas_del_subforo_de_desarrollo_web_13102015-t407889.0.html

Dicho esto,


Código
  1. <?php
  2.  
  3. // Conexion
  4. $mysqli = new mysqli('localhost', 'root', 'toor', 'test');
  5.  
  6.  
  7. // Query
  8. $query = 'SELECT * FROM productos';
  9. $result = $mysqli->query($query);
  10.  
  11.  
  12. // Si el query da resultado..
  13. if($result){
  14.  
  15.    // Por cada item..
  16.    while ($muestra = mysqli_fetch_assoc($result)) {
  17.        ?>
  18.  
  19.        <div class="col-sm-6 col-md-3">
  20.            <div class="thumbnail">
  21.              <a href="#"><img src="img/img-default.jpg" alt="Titulo del producto"></a>
  22.              <div class="caption">
  23.                <div class="caption">
  24.                                <h4 class="pull-right">$24.99</h4>
  25.                                <h4><a href="#">First Product</a>
  26.                                </h4>
  27.                                <p> <?php echo $muestra['descripcion']; ?> <a target="_blank" href="http://www.bootsnipp.com">Bootsnipp - http://bootsnipp.com</a>.</p>
  28.                                  </div>
  29.                </div>
  30.  
  31.                             <p class="text-center">
  32.                  <a href="#" class="btn btn-azul" role="button">Ver producto</a>
  33.                  <a href="#" class="btn btn-naranja" role="button">Lista de deseos</a>
  34.                </p>
  35.            </div>
  36.          </div>
  37.  
  38.        <?php
  39.    }
  40.  
  41. }


Citar
Si las imágenes de cada producto están en otra tabla imágenes y el campo que tienen en común es el idproducto ¿Cómo hago para que aparezcan? Estoy intentando un echo pero no lo consigo.

Tendrias que hacer un multi-query.
Código
  1. SELECT * FROM productos, imagenes WHERE productos.id_imagen = imagenes.id

Esto te retornara todos los productos que tienen una imagen, suponiendo que la tabla de imágenes se llama "imagenes" y que la tabla productos contiene una columna "id_imagen" que tiene el mismo contenido que la columna id de la tabla imagenes.

Citar
Ah, mi idea es que todas las imágenes independientemente de su tamaño original y extensión ocupen un tamaño determinado 100px por 100px por ejemplo. A ver si me podéis dar alguna pista.

Eso es CSS.

Código
  1. .thumbnail img {
  2.    width: 100px;
  3.    height: 100px;
  4. }

Saludos


En línea

bgnumis

Desconectado Desconectado

Mensajes: 155


Ver Perfil
Re: Tantos div como salidas de una consulta
« Respuesta #2 en: 9 Octubre 2017, 18:15 pm »

Hola,

Mil gracias. Lo pruebo ahora cuando vuelva he salido a correr que me estaba volviendo loco.

Tengo que pasarme a mysqli ya.

Lo de múltiple post no me he dado cuenta si lo he hecho. Sorry. Mil gracias.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Tantos datos y no consigo entrada....
Nivel Web
cho 2 3,541 Último mensaje 28 Diciembre 2010, 21:05 pm
por hdbreaker
Consulta - Tantos BSSID sin asociar / aumentar rango de potencia
Hacking Wireless
samuelacg 1 3,259 Último mensaje 12 Julio 2011, 21:59 pm
por lilo.
¿Alguno le da tantos problemas como a mi Windows 10?
Software
z3nth10n 5 1,771 Último mensaje 22 Agosto 2016, 10:39 am
por Orubatosu
¿Por que hay tantos Youtubers en España?
Foro Libre
Avispon99 4 5,983 Último mensaje 28 Julio 2017, 19:35 pm
por Avispon99
¿Por qué se producen tantos fallos en servicios globales como WhatsApp?
Noticias
wolfbcn 0 1,223 Último mensaje 20 Julio 2019, 01:47 am
por wolfbcn
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines