Foros del Web » Programando para Internet » PHP »

rotacion de banner

Estas en el tema de rotacion de banner en el foro de PHP en Foros del Web. Hola gente, necesito que me den una mano para hacer un rotador de banners. Lo que quiero es que una imagen rote cada 1 0 ...
  #1 (permalink)  
Antiguo 17/10/2010, 12:22
 
Fecha de Ingreso: abril-2008
Mensajes: 425
Antigüedad: 16 años
Puntos: 2
rotacion de banner

Hola gente, necesito que me den una mano para hacer un rotador de banners.
Lo que quiero es que una imagen rote cada 1 0 2 minutos
Tengo una base de datos en mysql que le agregue un boolen para saber si ese registro rota o no... me explico?

Bueno, he visto una funcion rand(), pero eso solo toma un campo aleatorio, ademas por lo que vi creo que habria que agregar javascript?

Muchas gracias
  #2 (permalink)  
Antiguo 17/10/2010, 14:16
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: rotacion de banner

analoyra:

Este es un Javascript muy simple para generar banners, debes agregarle el php para extraer los valores de la base de datos. En este ejemplo cada imagen tiene un link y un texto alt.

el tiempo de rotación lo definis en

window.setInterval("ciclol1()",10000);
el valor esta expresado en milisegundos


Código PHP:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es" >
  4. <head>
  5. <title>Banner</title>
  6. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  7. <script type="text/javascript">
  8. //<![CDATA[
  9. <?php
  10. ## generar una consulta que imprima imagen, link y alt para cada banner
  11. echo '
  12. var imgs1 = new Array("google.jpg","foros.jpg");
  13. var lnks1 = new Array("http://google.com","http://forosdelweb.com");
  14. var alt1 = new Array("Google","Foros del Web");
  15. ';
  16. ?>
  17. var actual1 = 0;
  18. var imgCt1 = 2;
  19. function ciclol1() {
  20.   if (actual1 == imgCt1) {
  21.     actual1 = 0;
  22.   }
  23. var banner1 = document.getElementById('adBanner1');
  24. var link1 = document.getElementById('adLink1');
  25.   banner1.src=imgs1[actual1]
  26.   banner1.alt=alt1[actual1]
  27.   document.getElementById('adLink1').href=lnks1[actual1]
  28.   actual1++;
  29. }
  30.   window.setInterval("ciclol1()",10000);
  31.  
  32. //]]>
  33. </script>
  34. </head>
  35. <body>
  36. <a href=""http://google.com"" id="adLink1" target="_top">
  37. <img src="google.jpg" id="adBanner1" border="0" width="468" height="60"></a>
  38. </body>
  39. </html>

Hay otras alternativas, pero en todos los casos para la rotación dinámica, Javascript ó Ajax

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #3 (permalink)  
Antiguo 17/10/2010, 17:12
 
Fecha de Ingreso: abril-2008
Mensajes: 425
Antigüedad: 16 años
Puntos: 2
Respuesta: rotacion de banner

Muchas gracias!! lo voy a probar, me podrias decir en que parte del codigo van las consultas??

yo hice esto
Código PHP:
Ver original
  1. ## generar una consulta que imprima imagen, link y alt para cada banner
  2.  $conexion=mysql_connect("localhost","root","paloma") or die ("no se ha podido conectar a la BD");
  3.    
  4.     mysql_select_db("alquileres") or die ("no se ha podido seleccionar la BD");
  5.    
  6.     $consul=" SELECT * FROM archivos  WHERE banner = 1" ;
  7.     $result=mysql_query($consul,$conexion);
  8. if ($row= mysql_fetch_array($result)){
  9. echo "var imgs1 = new Array(\"google.jpg\",\"foros.jpg\")";
  10. echo var "lnks1 = new Array(\"http://google.com\",\"http://forosdelweb.com\")";
  11. echo "var alt1 = new Array(\"Google\",\"Foros del Web\")";
  12. }

Última edición por analoyra; 17/10/2010 a las 18:40

Etiquetas: banner, rotacion
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 21:36.