Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. Rotazione banner
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • P
      pr3z1oso User • ultima modifica di

      Rotazione banner

      Salve, ho un sito in asp, non creato da me, con un sistema di inserimento banner via pannello di controllo ( si gestisce l'intero sito da qui ).
      Vorrei poter mettere i banner in random solo che mastico poco il codice, sareste cosi gentili da aiutarmi se è una cosa fattibile far diventare questi banner da "statici" a random ?
      Vi posto questo codice, sperando che sia sufficiente a suggerirvi la modifica.
      E' il codice del file che mi visualizza i banner in homepage.

      <table width="100%" border="0" cellspacing="6" cellpadding="0">
      <% connessione
      sqlbanner="select * from banner where id_riferimento=1 and on_line=true order by clicks"
      set rsbanner=conn.execute(sqlbanner)
      do while not rsbanner.eof
      %>
      <tr>
      <td align="center" width="180" style="border:2px #CCCCCC solid;"><IFRAME src="h**p://w*w.ledueruote.it/banner_home/view_home.asp?id_banner=<%=rsbanner("id_banner")%>" width="180" height="90" scrolling="no" frameborder="0">il tuo brouser non visualizza i frame.</IFRAME>
      </td>
      </tr>
      <%
      rsbanner.movenext
      loop
      rsbanner.close
      disconnessione %>
      </TABLE>Grazie in anticipo 🙂

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • marcocarrieri
        marcocarrieri ModSenior • ultima modifica di

        Da quello che vedo dal tuo codice, stampi tutti i banner o sbaglio?
        A te invece interessa che ne venga stampato uno casuale tra quelli della categoria giusta o sbaglio?

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • P
          pr3z1oso User • ultima modifica di

          @marcocarrieri said:

          Da quello che vedo dal tuo codice, stampi tutti i banner o sbaglio?
          A te invece interessa che ne venga stampato uno casuale tra quelli della categoria giusta o sbaglio?
          Ne visualizza piu di uno, una decina piu o meno.
          In archivio ne sono inseriti molti di piu, vorrei che ruotassero in automatico.
          La visualizzazione di un numero cosi alto di banner è dovuta anche al fatto che non ho possibilità di rotazione, quindi li mostro tutti.

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • marcocarrieri
            marcocarrieri ModSenior • ultima modifica di

            Quindi tu vorresti far si che ad esempio oggi fossero mostrati i banner da 1 a 10, domani da 2 a 11 e cosi via?

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • P
              pr3z1oso User • ultima modifica di

              Guarda il sito è questo: w*w.ledueruote.it
              Sulla sinistra vedi i banner, sono "statici" cioè che ad ogni refresh di pagina stanno sempre li fissi al loro posto.
              A me piacerebbe mettere un solo box banner, in orizzontale ( questo non è un problema ) dove in questo unico box si visualizzino questi banner che ho inserito in archivio, in modalità random

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • C
                cali1981 Super User • ultima modifica di

                Nella select nel codice che hai mostrato metti order by newid, ti ordina in maniera casuale i banner, prendi il primo e lo visualizzi.

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • P
                  pr3z1oso User • ultima modifica di

                  Quindi dovrei modificare questa riga da così:

                  sqlbanner="select * from banner where id_riferimento=1 and on_line=true order by clicks"
                  a così:
                  sqlbanner="select * from banner where id_riferimento=1 and on_line=true order by newid"

                  giusto ?

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • C
                    cali1981 Super User • ultima modifica di

                    Per essere precisi:

                    sqlbanner="select * from banner where id_riferimento=1 and on_line=true order by newid**()**"

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • C
                      cali1981 Super User • ultima modifica di

                      Per essere precisi:

                      sqlbanner="select * from banner where id_riferimento=1 and on_line=true order by newid**()**"

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • P
                        pr3z1oso User • ultima modifica di

                        Mi da questo errore:

                        Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
                        [Microsoft][ODBC Microsoft Access Driver] Undefined function 'newid' in expression.
                        /banner_home/a_rotation.asp, line 4

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • C
                          cali1981 Super User • ultima modifica di

                          Prova con questo codice:

                          <% 
                              Randomize() 
                              randNum = (CInt(1000 * Rnd) + 1) * -1 
                           
                              set conn = CreateObject("ADODB.Connection") 
                           
                              sql = "SELECT TOP 1 cols," & _ 
                                  "r = Rnd(" & randNum & ")" & _ 
                                  "FROM TableName " & _ 
                                  "ORDER BY r" 
                           
                              set rs =     conn.execute(sql) 
                           
                              response.write rs(0) 
                           
                              ' ... 
                              rs.close: set rs = nothing 
                              conn.close: set conn = nothing 
                          %>
                          
                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • C
                            cali1981 Super User • ultima modifica di

                            Prova con questo codice:

                            <% 
                                Randomize() 
                                randNum = (CInt(1000 * Rnd) + 1) * -1 
                             
                                set conn = CreateObject("ADODB.Connection") 
                             
                                sql = "SELECT TOP 1 cols," & _ 
                                    "r = Rnd(" & randNum & ")" & _ 
                                    "FROM TableName " & _ 
                                    "ORDER BY r" 
                             
                                set rs =     conn.execute(sql) 
                             
                                response.write rs(0) 
                             
                                ' ... 
                                rs.close: set rs = nothing 
                                conn.close: set conn = nothing 
                            %>
                            
                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            • P
                              pr3z1oso User • ultima modifica di

                              Lo sostituisco a tutto il codice che ho riportato ?

                              0 Miglior Risposta Ringrazia Cita Rispondi

                                1 Risposta Ultima Risposta
                              • C
                                cali1981 Super User • ultima modifica di

                                No devi modificare la parte che fa la query, aggiungendo la parte con r= Rnd....

                                0 Miglior Risposta Ringrazia Cita Rispondi

                                  1 Risposta Ultima Risposta
                                • P
                                  pr3z1oso User • ultima modifica di

                                  @cali1981 said:

                                  No devi modificare la parte che fa la query, aggiungendo la parte con r= Rnd....
                                  Scusa cali1981, sono abbastanza niubbio...

                                  devo sostituire questa parte :

                                  <% connessione
                                  sqlbanner="select * from banner where id_riferimento=1 and on_line=true order by clicks"
                                  set rsbanner=conn.execute(sqlbanner)
                                  do while not rsbanner.eof
                                  %>

                                  con quella che mi hai suggerito ?

                                  0 Miglior Risposta Ringrazia Cita Rispondi

                                    1 Risposta Ultima Risposta
                                  • C
                                    cali1981 Super User • ultima modifica di

                                    Devi mettere questo codice al suo posto:

                                    
                                    Randomize() 
                                        randNum = (CInt(1000 * Rnd) + 1) * -1 
                                     
                                        set conn = CreateObject("ADODB.Connection") 
                                     
                                     sqlbanner="select *,r = Rnd("& randNum  &") from banner where id_riferimento=1 and on_line=true order by r"
                                    set rsbanner=conn.execute(sqlbanner)
                                    
                                    
                                    
                                    
                                    0 Miglior Risposta Ringrazia Cita Rispondi

                                      1 Risposta Ultima Risposta
                                    • C
                                      cali1981 Super User • ultima modifica di

                                      Devi mettere questo codice al suo posto:

                                      
                                      Randomize() 
                                          randNum = (CInt(1000 * Rnd) + 1) * -1 
                                       
                                          set conn = CreateObject("ADODB.Connection") 
                                       
                                       sqlbanner="select *,r = Rnd("& randNum  &") from banner where id_riferimento=1 and on_line=true order by r"
                                      set rsbanner=conn.execute(sqlbanner)
                                      
                                      
                                      
                                      
                                      0 Miglior Risposta Ringrazia Cita Rispondi

                                        1 Risposta Ultima Risposta
                                      • P
                                        pr3z1oso User • ultima modifica di

                                        Mi visualizza questo errore

                                        ADODB.Connection error '800a0e78'
                                        Operation is not allowed when the object is closed.
                                        /banner_home/a_rotation.asp, line 8

                                        0 Miglior Risposta Ringrazia Cita Rispondi

                                          1 Risposta Ultima Risposta
                                        • C
                                          cali1981 Super User • ultima modifica di

                                          Puoi fare id = rsbanner("id_banner")

                                          e sostituire a rsbanner("id_banner") nel codice che hai fatto vedere all'inizio solo id

                                          0 Miglior Risposta Ringrazia Cita Rispondi

                                            1 Risposta Ultima Risposta
                                          • P
                                            pr3z1oso User • ultima modifica di

                                            Inserendo solo questa ultima cosa non mi da problemi ma i banner non sono in random.

                                            volevo farti anche una domanda, pensi sia piu facile trovare una soluzione qui o implementare questa funzione di banner random ex novo ? ci sono molti moduli per rotazione banner per la rete, ho cercato, solo che non saprei come montarli in questo pannello di controllo che ho per questo sito

                                            0 Miglior Risposta Ringrazia Cita Rispondi

                                              1 Risposta Ultima Risposta
                                            Caricamento altri post
                                            Rispondi
                                            • Topic risposta
                                            Effettua l'accesso per rispondere
                                            • Da Vecchi a Nuovi
                                            • Da Nuovi a Vecchi
                                            • Più Voti