Foros del Web » Programando para Internet » PHP »

Slide con imagenes de base de datos

Estas en el tema de Slide con imagenes de base de datos en el foro de PHP en Foros del Web. Hola a todos. Hago esta consulta que no sé si está resuelta por ahi... yo no lo he encontrado. Quiero hacer para una página web ...
  #1 (permalink)  
Antiguo 28/11/2013, 07:54
 
Fecha de Ingreso: julio-2013
Mensajes: 174
Antigüedad: 10 años, 9 meses
Puntos: 1
Slide con imagenes de base de datos

Hola a todos. Hago esta consulta que no sé si está resuelta por ahi... yo no lo he encontrado.

Quiero hacer para una página web un slide de imágenes de una base de datos. Me explico, yo he hecho varios slides con imágenes que se suben al servidor, donde pones en el código html la llamada a cada imágen, por ejemplo este:

Código HTML:
Ver original
  1. <div id="slider">
  2.             <ul>
  3.                 <li><img src="slide/images/1.png" width="400" height="400" /></li>
  4.                 <li><img src="slide/images/2.png" width="400" height="400" /></li>
  5.                 <li><img src="slide/images/3.png" width="400" height="400" /></li>
  6.                 <li><img src="slide/images/4.png" width="400" height="400" /></li>
  7.             </ul>
  8.         </div>

El problema con el que me encuentro ahora es que no puedo poner la llamada a cada imágen porque son mas de 100 y además el cliente puede subir más a traves de un formulario php que he creado en su página.

Lo que necesito es tener un slide que en vez de llamar una por una a las imágenes nombrandolas como 1,2,3,4..... que llame las imágenes de la base de datos y las muestre haciendo un slide. Que no importe que tenga 100 o 2000 imágenes, que haga la llamada a la base de datos para que todas las imágenes corran en el slide.

No se si me he explicado bien. Si no es así decidmelo e intentaré explicarlo de otra manera. Pero la base es esa, mostrar en un slide las imágenes guardadas en base de datos.

Espero podáis ayudarme.
Muchas gracias por adelantado.
  #2 (permalink)  
Antiguo 28/11/2013, 08:02
Avatar de marlanga  
Fecha de Ingreso: enero-2011
Ubicación: Murcia
Mensajes: 1.024
Antigüedad: 13 años, 3 meses
Puntos: 206
Respuesta: Slide con imagenes de base de datos

No, si la idea es clara, pero sin saber programar lo tienes crudo. Empieza a ver tutoriales de programación php, de hacer consultas sql, etc.
Por otra parte, un slider de 100 imágenes necesitarás precargarlas con javascript antes de crear el slider. O rezar para que el usuario no avance en el el slider mientras no estén cargadas las imágenes.
  #3 (permalink)  
Antiguo 28/11/2013, 08:03
 
Fecha de Ingreso: mayo-2011
Ubicación: Bs.As Argentina
Mensajes: 193
Antigüedad: 13 años
Puntos: 3
Respuesta: Slide con imagenes de base de datos

Hola, fíjate que twitter bootstrap tiene para hacer slide.

http://getbootstrap.com/javascript/

Te servirá?.

Saludos
  #4 (permalink)  
Antiguo 28/11/2013, 08:28
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Slide con imagenes de base de datos

¿Algo así es lo que no sabes programar?

Código PHP:
Ver original
  1. <div id="slider">
  2. <ul>
  3.  
  4. <?php while ($row = any_sql_fetch_obj($res)): ?>
  5.  
  6.   <li>
  7.     <img src="<?php echo $row->image_src; ?>" />
  8.   </li>
  9.  
  10. <?php endwhile; ?>
  11.  
  12. </ul>
  13. </div>

Este tipo de ejemplos salen en cualquier tutorial, ¡hasta en las cajas de cereal!

Increíble que tu talento como programador te permita hacer miles de consultas, pero ningún ejercicio básico.

Lo siento.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 28/11/2013, 08:58
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Slide con imagenes de base de datos

raulgranadosraul:

¿Por qué no muestras tu código (el que hace la consulta y el loop) y te ayudamos a integrarlo el slider que comentaste al abrir el tema?

Algo has de tener programado, mínimo.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #6 (permalink)  
Antiguo 28/11/2013, 09:05
 
Fecha de Ingreso: julio-2013
Mensajes: 174
Antigüedad: 10 años, 9 meses
Puntos: 1
Respuesta: Slide con imagenes de base de datos

Cita:
Iniciado por pateketrueke Ver Mensaje
raulgranadosraul:

¿Por qué no muestras tu código (el que hace la consulta y el loop) y te ayudamos a integrarlo el slider que comentaste al abrir el tema?

Algo has de tener programado, mínimo.
De momento tengo la base de datos con tres columnas que son idFoto, nombreFoto y Foto, donde se almacenarán todas las fotos que el cliente suba a través de un formulario que he creado para la administración.

El html que he usado en otras ocasiones es el siguiente:

Código HTML:
Ver original
  1. <div id="slider">
  2.             <ul>
  3.                 <li><img src="../images/foto1slide1.png" width="1050" height="400" alt="Materiales para manualidades" /></li>
  4.                 <li><img src="../images/foto2slide1.png" width="1050" height="400" alt="Art&iacute;culos para confeccionar bisuter&iacute;a" /></li>
  5.                 <li><img src="../images/foto3slide1.png" width="1050" height="400" alt="Nuestros art&iacute;culos est&aacute;n hechos a mano" /></li>
  6.                 <li><img src="../images/foto4slide1.png" width="1050" height="400" alt="Cosas para ponerte guapa y para regalar" /></li>
  7.             </ul>
  8.         </div>

El problema con esto es que las imágenes están guardadas en una carpeta junto con la web. Con lo que he de crear una linea para cada imágen que está dentro de esa carpeta.

Tengo este php para subir la imágen a la base de datos

Código PHP:
Ver original
  1. <?php if ((isset($_POST["enviado"])) && ($_POST["enviado"] == "form1")) {
  2.     $nombre_archivo = $_FILES['userfile']['name'];
  3.     move_uploaded_file($_FILES['userfile']['tmp_name'], "../documentos/articulos/".$nombre_archivo);
  4. ?>
  5.     <script>
  6.     opener.document.form1.strImagen.value="<?php echo $nombre_archivo; ?>";
  7.     self.close();
  8.     </script>
  9. <?php
  10. }
  11. else
  12. {?>
  13. <form action="gestionimagen.php" method="post" enctype="multipart/form-data" id="form1">
  14.   <p>
  15.     <input name="userfile" type="file" />
  16.   </p>
  17.   <p>
  18.     <input type="submit" name="button" id="button" value="Subir imágen" alt="Subir im&aacute;gen" />
  19.   </p>
  20.     <input type="hidden" name="enviado" value="form1" />
  21. </form>
  22. <?php }?>

Sé hacer la consulta para que me devuelva las imágenes, lo que no sé hacer es que en vez de llamarlas a una carpeta y poner una linea de código html para cada imágen, que me devuelva todas las imágenes en el slide.
  #7 (permalink)  
Antiguo 28/11/2013, 12:10
 
Fecha de Ingreso: julio-2013
Mensajes: 174
Antigüedad: 10 años, 9 meses
Puntos: 1
Respuesta: Slide con imagenes de base de datos

Cita:
Iniciado por pateketrueke Ver Mensaje
raulgranadosraul:

¿Por qué no muestras tu código (el que hace la consulta y el loop) y te ayudamos a integrarlo el slider que comentaste al abrir el tema?

Algo has de tener programado, mínimo.
He armado el formulario para insertar la imágen de esta manera:
Código HTML:
Ver original
  1. <form action="<?php echo $editFormAction; ?>" method="post" name="form1" id="form1">
  2.         <table align="center">
  3.           <tr valign="baseline">
  4.             <td nowrap="nowrap" align="right">Imagen:</td>
  5.             <td><input type="text" name="strImagen" value="" size="32" /></td>
  6.           </tr>
  7.           <tr valign="baseline">
  8.             <td nowrap="nowrap" align="right">&nbsp;</td>
  9.             <td>
  10.             <input type="button" value="Buscar im&aacute;gen" onclick="javascript:subirimagen();" />
  11.             <input name="submit" type="submit" id="submit" value="Aceptar" />
  12.             </td>
  13.           </tr>
  14.         </table>
  15.         <input type="hidden" name="MM_insert" value="form1" />
  16.       </form>

El formulario anterior abre una ventana para seleccionar la imágen que quiere subir el cliente, es la siguiente:
Código PHP:
Ver original
  1. <?php if ((isset($_POST["enviado"])) && ($_POST["enviado"] == "form1")) {
  2.     $nombre_archivo = $_FILES['userfile']['name'];
  3.     move_uploaded_file($_FILES['userfile']['tmp_name'], "fotos/".$nombre_archivo);
  4. ?>
  5.     <script>
  6.     opener.document.form1.strImagen.value="<?php echo $nombre_archivo; ?>";
  7.     self.close();
  8.     </script>
  9. <?php
  10. }
  11. else
  12. {?>
  13. <form action="subir_imagen.php" method="post" enctype="multipart/form-data" id="form1">
  14.   <p>
  15.     <input name="userfile" type="file" />
  16.   </p>
  17.   <p>
  18.     <input type="submit" name="button" id="button" value="Aceptar" alt="Aceptar" />
  19.   </p>
  20.     <input type="hidden" name="enviado" value="form1" />
  21. </form>
  22. <?php }?>

La imágen se inserta bien en la base de datos, sin ningún problema.

Ahora bien, si hago un slide de la siguiente manera:
Código HTML:
Ver original
  1. <div id="slider">
  2.             <ul>
  3.                 <li><img src="../images/foto1slide1.png" width="1050" height="400" alt="Materiales para manualidades" /></li>
  4.                 <li><img src="../images/foto2slide1.png" width="1050" height="400" alt="Art&iacute;culos para confeccionar bisuter&iacute;a" /></li>
  5.                 <li><img src="../images/foto3slide1.png" width="1050" height="400" alt="Nuestros art&iacute;culos est&aacute;n hechos a mano" /></li>
  6.                 <li><img src="../images/foto4slide1.png" width="1050" height="400" alt="Cosas para ponerte guapa y para regalar" /></li>
  7.             </ul>
  8.         </div>

...tendría que añadir una linea de código para cada imágen, por lo que todas las imágenes que suba el cliente (ya que tiene un apartado de administración para subir las que quiera) no se mostrarían.

Lo que ando buscando es algo como esto:
Código HTML:
Ver original
  1. <img src="fotos/<?php echo $row_Recordset1['strImagen']; ?>" />

que funciona bien, es decir me muestra la imágen donde la ponga, y si son mas de 1 con hacerle un do-while se repetirían todas sin problema.

La historia está en que quiero que se muestren en un slide, y ahi es donde he parado, porque no se como hacer que se muestren todas por el slide con un solo código.

Echadme una mano por favor, yo sigo buscando soluciones pero de momento no he encontrado gran cosa para solucionarlo.

Gracias
  #8 (permalink)  
Antiguo 28/11/2013, 12:46
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Slide con imagenes de base de datos

¿Esto?

Código PHP:
Ver original
  1. <div id="slider">
  2.   <ul>
  3.  
  4. <?php while (/* ... */) { ?>
  5.     <li><img src="fotos/<?php echo $row_Recordset1['strImagen']; ?>" /></li>
  6. <?php } ?>
  7.  
  8.   </ul>
  9. </div>
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #9 (permalink)  
Antiguo 28/11/2013, 13:37
 
Fecha de Ingreso: julio-2013
Mensajes: 174
Antigüedad: 10 años, 9 meses
Puntos: 1
Respuesta: Slide con imagenes de base de datos

Cita:
Iniciado por pateketrueke Ver Mensaje
¿Esto?

Código PHP:
Ver original
  1. <div id="slider">
  2.   <ul>
  3.  
  4. <?php while (/* ... */) { ?>
  5.     <li><img src="fotos/<?php echo $row_Recordset1['strImagen']; ?>" /></li>
  6. <?php } ?>
  7.  
  8.   </ul>
  9. </div>
No me camina el slide asi. Me muestra solo la primera imágen, que es con lo que estoy peleando desde ayer. He probado varios slide y me pasa lo mismo. No se si con un array podré solucinarlo, porque la verdad es que arrays no utilizo prácticamente.

Etiquetas: formulario, html, imagenes, slide
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 14:31.