Avatar billede random Nybegynder
21. august 2008 - 13:08 Der er 6 kommentarer og
1 løsning

Vis to tilfældige billeder som ikke må være ens?

Jeg bruge denne kode til at hente 2 banner frem på min side, men det samme billede må ikke vises, hvad skal jeg ænfre?


IF NOT rsBanner.EOF THEN
DO UNTIL rsBANNER.EOF

looper = rsBanner("BANNER_RANDOM")

DO UNTIL looper = 0
streng = streng & ", "&rsBanner("BANNER_ID")&""
looper = looper - 1
teller = teller + 1
LOOP

rsBanner.Movenext
LOOP

arrbanner = Split(streng,",")

For t = LBound(arrbanner) to UBound(arrbanner)
   
Next
antal = (t - 1)

Randomize()               
Random = int((antal * Rnd())+1)

bannerid = arrbanner(Random)

set rsBanner = Server.CreateObject("ADODB.Recordset")
strSQLBanner = "SELECT * FROM BANNER WHERE BANNER_ID = " & bannerid
rsBanner.open strSQLBanner,strDNS

bannerid = rsBanner("BANNER_ID")
bannerpic = rsBanner("BANNER_PIC")
bannershows = (rsBanner("BANNER_SHOWS") + 1)
bannerCode = rsBanner("BANNER_CODE")
bannerCodeTrue = rsBanner("BANNER_CODE_TRUE")

set rsBanner = Server.CreateObject("ADODB.Recordset")
strSQLBanner = "UPDATE BANNER SET BANNER_SHOWS = " & bannershows & " WHERE BANNER_ID = " & bannerid
rsBanner.open strSQLBanner,strDNS

IF bannerCodeTrue <> 1 THEN
%>

'udskriver her bannerne


<td><a target="_blank" href="Redirect.asp?b_id=<%=bannerid%>"><img src="billeder/Banner/<%=bannerpic%>" width="176" height="58" border="0"></a>&nbsp;&nbsp;&nbsp;<a target="_blank" href="Redirect.asp?b_id=<%=bannerid%>"><img src="billeder/Banner/<%=bannerpic%>" width="176" height="58" border="0"></a></td>
Avatar billede w13 Novice
21. august 2008 - 13:37 #1
Vis lige lidt mere af din kode. Vi mangler lidt mere for at kunne overskue ordentligt, hvad der sker.
Avatar billede w13 Novice
21. august 2008 - 13:42 #2
Der sker flere ting, som ikke giver mening.

F.eks.:

teller = teller + 1

Men teller bruges intet andet sted.

Eller:

For t = LBound(arrbanner) to UBound(arrbanner)
   
Next

som jo bare er en tom løkke.

I øvrigt sætter du:

set rsBanner = Server.CreateObject("ADODB.Recordset")

2 gange i stedet for bare at genbruge den.
Avatar billede random Nybegynder
21. august 2008 - 14:03 #3
Her er hele koden som generer de 2 banner:



<%
teller = 0

set rsBanner = Server.CreateObject("ADODB.Recordset")
strSQLBanner = "SELECT * FROM BANNER WHERE BANNER_PLACE = 1 AND BANNER_STATUS = 1 "
rsBanner.open strSQLBanner,strDNS


IF NOT rsBanner.EOF THEN
DO UNTIL rsBANNER.EOF

looper = rsBanner("BANNER_RANDOM")

DO UNTIL looper = 0
streng = streng & ", "&rsBanner("BANNER_ID")&""
looper = looper - 1
teller = teller + 1
LOOP

rsBanner.Movenext
LOOP

arrbanner = Split(streng,",")

For t = LBound(arrbanner) to UBound(arrbanner)
   
Next
antal = (t - 1)

Randomize()               
Random = int((antal * Rnd())+1)

bannerid = arrbanner(Random)

set rsBanner = Server.CreateObject("ADODB.Recordset")
strSQLBanner = "SELECT * FROM BANNER WHERE BANNER_ID = " & bannerid
rsBanner.open strSQLBanner,strDNS

bannerid = rsBanner("BANNER_ID")
bannerpic = rsBanner("BANNER_PIC")
bannershows = (rsBanner("BANNER_SHOWS") + 1)
bannerCode = rsBanner("BANNER_CODE")
bannerCodeTrue = rsBanner("BANNER_CODE_TRUE")

set rsBanner = Server.CreateObject("ADODB.Recordset")
strSQLBanner = "UPDATE BANNER SET BANNER_SHOWS = " & bannershows & " WHERE BANNER_ID = " & bannerid
rsBanner.open strSQLBanner,strDNS

IF bannerCodeTrue <> 1 THEN
%>
    <table width="176" border="0" align="center" cellpadding="0" cellspacing="0" bordercolor="#FFFFFF">
      <tr>
        <td bordercolor="#FFFFFF"><div align="center"><a target="_blank" onFocus="this.blur()" href="Redirect.asp?b_id=<%=bannerid%>"><img src="billeder/Banner/<%=bannerpic%>" width="176" height="58" border="0"></a>&nbsp;&nbsp;&nbsp;<a target="_blank" onFocus="this.blur()" href="Redirect.asp?b_id=<%=bannerid%>"><img src="billeder/Banner/<%=bannerpic%>" width="176" height="58" border="0"></a></div></td>
        <%
        ELSE
        %>
        <table width="176" border="0" align="center" cellpadding="0" cellspacing="0" bordercolor="#FFFFFF">
          <tr>
            <%
        RESPONSE.WRITE "<td valign='middle' width='176'>"&replace(bannerCode, "--**--", "'")&"</td>"
        END IF
        %>
          </tr>
        </table>
        <%
ELSE
%>
        <table width="176" border="0" align="center" cellpadding="0" cellspacing="0" bordercolor="#FFFFFF">
          <tr>
            <td bordercolor="#FFFFFF" height="60"><div align="center"><a href="http://www.cure4design.dk" target="_blank"><img src="billeder/banner/C4D_banner.gif" border="0"></a></div></td>
          </tr>
        </table>
        <%
END IF
%>
Avatar billede random Nybegynder
21. august 2008 - 14:05 #4
ps noget af koden er ikke til billederne men bruges i statistik for hvor mange klik der er på hvert banner, måske det kunne forvirre lidt?
Avatar billede jhkl Nybegynder
21. august 2008 - 14:39 #5
Prøv at undersøg muligheden for at få et tilfældigt udtræk direkte i din sql. Så kan du bare trække de første to rækker ud
Avatar billede random Nybegynder
21. august 2008 - 17:08 #6
hvordan gør jeg det?
Avatar billede random Nybegynder
22. august 2008 - 11:02 #7
lukket
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester