Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    654

    Banner a rotazione con immagini prese da db

    Il percorso delle immagini e il link relativo da mettere nell'href sono presenti nei campi di un database mysql. Io le ho estrapolati e inseriti in un array simile a questo:

    $percorso[0]=home/img.gif
    $percorso[1]=home/immagine.jpg
    ecc.

    $link[0]=http://www.html.it
    $link[1]=http://www.tgcom.it
    ecc.

    Con queste informazioni devo creare un banner a rotazione, da inserire all'interno di un div. In pratica, ogni tot di tempo, nel div deve apparire l'elemento successivo dell'array.
    Esiste un modo per farlo in php?

    Eventualmente mi va bene anche in JavaScript, ma siccome lo conosco poco non so bene come integrarlo con php-mysql. Ho trovato un esempio già pronto, però prendeva solo immagini già pronte in una cartella e non sono riuscito ad adattarlo (sono tre giorni che ci sto dietro)...

  2. #2
    L'unico modo è usare js+php. quindi posta il codice js che hai trovato.

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2005
    Messaggi
    654
    Innanzitutto grazie per avermi risposto

    Questo è il codice javascript della pagina (preso da uno Javascript presente in html.it al link http://javascript.html.it/demo/javas...65/esempio.htm)
    Il fulcro dovrebbe essere nella funzione rotate(), ma non riesco a capire il meccanismo di rotazione temporale...
    Qui viene usato un array dest[] per la destinazione e un array msg[] per un'eventuale scritta sotto (ma non è necessaria). Io al posto di dest[] uso $link[] derivato dal php e come percorso ho già un array $percorso[] che contiene tutto il path.
    Devo capire come integrarli nella funzione rotate()

    Codice PHP:
    <script type="text/javascript" language="JavaScript">
    <!--
    var 
    bannerwidth 468;
    var 
    bannerheight 60;
    var 
    sponsor_nr=4;
    var 
    folder="banner/";
    var 
    sfx='.gif';
    var 
    timerot 5000;

    var 
    sponsorctr=0;
    var 
    halt=0;
    im=new Array();
    for (
    i=0;i<sponsor_nr;i++){
     
    im[i]=new Image();
     
    im[i].src=folder+i+sfx;
    }
    var 
    dest=new Array();
    dest[0]="http://corsi.html.it";
    dest[1]="http://freephp.html.it";
    dest[2]="http://newsletter.html.it";
    dest[3]="http://corsi.html.it";

    var 
    msg=new Array();
    msg[0]="Messaggio per Corsi.html.it etc etc etc etc...";
    msg[1]="Messaggio per Freephp.html.it etc etc etc etc...";
    msg[2]="Messaggio per Newsletter.html.it etc etc etc etc...";
    msg[3]="Messaggio per Corsi.html.it etc etc etc etc...";

    function 
    rotateIt(){
     if (
    halt!=1){
      
    sponsorctr=(sponsorctr<sponsor_nr-1?sponsorctr+1:0);
      
    document.images[ad].src=im[sponsorctr].src;
      if (
    document.getElementById){
       
    document.getElementById('a').innerHTML=msg[sponsorctr];
       }
      
    tmr=setTimeout("rotateIt()",+timerot);
      }
    }

    function 
    lightIt(){
     
    halt=0;
     
    window.status="Visitati "+dest[sponsorctr];
     if (
    tmr!=""){
      
    clearTimeout(tmr);
      }
     }

    function 
    dimIt(){
     
    halt=0;
     
    window.status="";
     
    rotateIt();
     }

    function 
    dumpIt(){
     
    halt=1;
     
    sponwin=window.open(dest[sponsorctr],'','');
     }
    function 
    wrtIt(){
     
    document.write('<TABLE BORDER="0" WIDTH="'+bannerwidth+'" align="center"><TR><T'
     
    +'D>[img]+folder+[/img]<A HREF=sponsor'
     
    +'.html onMouseover=lightIt() onMouseOut=dimIt() onClick="dumpIt'
     
    +'();return false;">[img]+folder+[/img]
    <DIV ID=a><ILAYER ID=b><LAYER ID=c><IMG SRC='
     
    +folder+'shim.gif WIDTH='+bannerwidth+' HEIGHT='+bannerheight+'></LAYER></ILAYER></DIV></A></'
     
    +'TD></TR></TABLE>');
     }

    function 
    getImgAdd(){
     for (var 
    i=0;i<20;i++){
      if (
    document.images[i].src.indexOf(folder+'shim.gif')>-1){
       
    ad=i+1;
       
    i=20
       
    }
      }
     }

    //-->
    </script>

    </head>
    <body >



    <div align="center">


    <SCRIPT language=JAVASCRIPT>
    <!--
    wrtIt();
    getImgAdd();
    sponsorctr=Math.floor((sponsor_nr*Math.random()));
    rotateIt();
    // -->
    </SCRIPT> 

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.