Avatar billede qqq Nybegynder
28. marts 2006 - 20:55 Der er 14 kommentarer og
2 løsninger

Random banner

Jeg har følgende simple kode i ASP, som jeg ønsker at få omskrevet til ASP.NET

Er der nogen der kan hjælpe mig med dette? Jeg ser helst at syntaksen er i C#

Randomize
index = INT(3 * RND + 1)

Select Case index
Case 1
%>
<img src="http://www.domain.com/banner1.gif">
<%
Case 2
%>
<img src="http://www.domain.com/banner2.gif">
<%
Case 3
%>
<img src="http://www.domain.com/banner3.gif">
<%
End Select
Avatar billede dj_uncas Nybegynder
28. marts 2006 - 21:07 #1
du kan bruge System.Random:

//Vælger mellem 1 og 3
Random r = new Random( 1, 3 );
int index = r.Next();

string banner = "http://www.domain.dk/";

switch( index )
{
    case 1:
      banner += "banner1.gif";
      break;
    case 2:
      banner += "banner2.gif";
      break;
    case 3:
      banner += "banner3.gif";
      break;
}

Response.Write( banner );

---

Du kan evt. erstatte med den indbyggede AdRotater kontrol:
http://msdn2.microsoft.com/en-us/library/system.web.ui.webcontrols.adrotator(VS.80).aspx
Avatar billede dj_uncas Nybegynder
28. marts 2006 - 21:07 #2
hovsa, din switch mangler lige:

default:
  banner += "banner0.gif";
  break;


ellers vil det ikke compile..
Avatar billede qqq Nybegynder
28. marts 2006 - 21:27 #3
dj_uncas >> Tak for svar.

Er du flink at skrive den komplette kode, så jeg bare kan paste det ind i en aspx fil. Jeg har foreløbig ingen større erfaring med asp.net

Der hvor bannerne angives, f.eks banner1.gif skal jeg i stedet indsætte et længere javascript der udskriver banneret. Derfor ser jeg det umiddelbart nødvendigt at skifte mellem Asp.net og Html, ligesom i mit oprindelige script - eller hvordan kan det klares?

Her et eksempel på script der udskriver banneret:

<script type="text/javascript" language="javascript" src="http://as1.falkag.de/sel?v=jsc;136248;;;728;90;0&wrd=[KeyWord]&prf=[Profile]"></script>
<noscript>
<a href="http://as1.falkag.de/sel?v=lnk;136248;;;;;0&wrd=[KeyWord]&prf=[Profile]" target="_blank"><img src="http://as1.falkag.de/sel?v=ban;136248;;;;;0&wrd=[KeyWord]&prf=[Profile]"  width=728 height=90 alt="Please click here." border=0></a>
</noscript>
Avatar billede dj_uncas Nybegynder
28. marts 2006 - 21:33 #4
Det bliver noget i stil med dette

.aspx:
<script type="text/javascript" language"javascript" src="<%= ScriptUrl %>"></script>
<noscript>
    <a href="<%= HrefUrl %>">
        <img src="<%= ImageUrl %>" />
    </a>
</noscript>


.aspx.cs:

//Her skal du bruge det jeg skrev før i stedet
int index = 1;

public string ScriptUrl = "http://..." + index.ToString();
public string HrefUrl = "http://.." + index.ToString();
public string ImageUrl = "http://.." + index.ToString();


så skulle du være kørende
Avatar billede qqq Nybegynder
28. marts 2006 - 21:48 #5
Jeg tror ikke helt at det var hvad jeg skulle bruge.

Jeg har skrevet min oprindelige kode lidt mere specifik.

De forskellige select cases skal hver især udskrive et bannertag, som f.eks kan være som dette.

<!-- BEGIN: AdSolution-Website-Tag 4.1 -->
<script type="text/javascript" language="javascript" src="http://as1.falkag.de/sel?v=jsc;136248;;;728;90;0&wrd=[KeyWord]&prf=[Profile]"></script>
<noscript>
<a href="http://as1.falkag.de/sel?v=lnk;136248;;;;;0&wrd=[KeyWord]&prf=[Profile]" target="_blank"><img src="http://as1.falkag.de/sel?v=ban;136248;;;;;0&wrd=[KeyWord]&prf=[Profile]"  width=728 height=90 alt="Please click here." border=0></a>
</noscript>
<!-- END:AdSolution-Tag 4.1 -->

Dermed ser den oprindelige kode således ud, men skal omskrives til asp.net:

-------------------------------

Randomize
index = INT(3 * RND + 1)

Select Case index
Case 1
%>
<!-- BEGIN: AdSolution-Website-Tag 4.1 -->
<script type="text/javascript" language="javascript" src="http://as1.falkag.de/sel?v=jsc;136248;;;728;90;0&wrd=[KeyWord]&prf=[Profile]"></script>
<noscript>
<a href="http://as1.falkag.de/sel?v=lnk;136248;;;;;0&wrd=[KeyWord]&prf=[Profile]" target="_blank"><img src="http://as1.falkag.de/sel?v=ban;136248;;;;;0&wrd=[KeyWord]&prf=[Profile]"  width=728 height=90 alt="Please click here." border=0></a>
</noscript>
<!-- END:AdSolution-Tag 4.1 -->
<%
Case 2
%>
<!-- BEGIN: AdSolution-Website-Tag 4.1 -->
<script type="text/javascript" language="javascript" src="http://as1.falkag.de/sel?v=jsc;136248;;;728;90;0&wrd=[KeyWord]&prf=[Profile]"></script>
<noscript>
<a href="http://as1.falkag.de/sel?v=lnk;136248;;;;;0&wrd=[KeyWord]&prf=[Profile]" target="_blank"><img src="http://as1.falkag.de/sel?v=ban;136248;;;;;0&wrd=[KeyWord]&prf=[Profile]"  width=728 height=90 alt="Please click here." border=0></a>
</noscript>
<!-- END:AdSolution-Tag 4.1 -->
<%
Case 3
%>
<!-- BEGIN: AdSolution-Website-Tag 4.1 -->
<script type="text/javascript" language="javascript" src="http://as1.falkag.de/sel?v=jsc;136248;;;728;90;0&wrd=[KeyWord]&prf=[Profile]"></script>
<noscript>
<a href="http://as1.falkag.de/sel?v=lnk;136248;;;;;0&wrd=[KeyWord]&prf=[Profile]" target="_blank"><img src="http://as1.falkag.de/sel?v=ban;136248;;;;;0&wrd=[KeyWord]&prf=[Profile]"  width=728 height=90 alt="Please click here." border=0></a>
</noscript>
<!-- END:AdSolution-Tag 4.1 -->
<%
End Select

---------------------------------

Jeg håber at det giver mening, ellers må du sige til.

Jeg kan evt. godt afgive flere point, i så fald det skulle være nødvendigt.
Avatar billede dj_uncas Nybegynder
28. marts 2006 - 21:52 #6
så bruger du det switch-statement jeg viste dig, men i stedet for bare at angive variablen "banner" gør du dette:

case 2:
  Response.Write(@"
<script type='text/javascript' language='javascript' src='http://as1.falkag.de/sel?v=jsc;136248;;;728;90;0&wrd=[KeyWord]&prf=[Profile]'></script>
<noscript>
<a href='http://as1.falkag.de/sel?v=lnk;136248;;;;;0&wrd=[KeyWord]&prf=[Profile]' target='_blank'><img src='http://as1.falkag.de/sel?v=ban;136248;;;;;0&wrd=[KeyWord]&prf=[Profile]'  width=728 height=90 alt='Please click here.' border=0></a>
</noscript>
    ";
    break;

case 3:
// det samme
break;
Avatar billede qqq Nybegynder
28. marts 2006 - 22:11 #7
Jeg synes at det begynder at ligne noget. Dog kan jeg ikke få det til at virke, men det er nok fordi jeg er en idiot til asp.net og intet kender til det.

Kan jeg få dig til at sammenfatte det hele i et konkret eksempel, altså den præcise aspx og aspx.cs kode inklusiv det hele, namespace, default language og hvad der ellers er nødvendigt for at jeg kan afvikle det.

Jeg giver dig dermed dobbelt point.
Avatar billede dj_uncas Nybegynder
28. marts 2006 - 22:15 #8
ok, men der går lige lidt. Jeg skal lige ordne noget andet først..
Avatar billede dj_uncas Nybegynder
28. marts 2006 - 22:43 #9
BannerRotater.aspx:
http://aoa.dk/demo/BannerRotater.aspx.txt

BannerRotator.aspx.cs:
http://aoa.dk/demo/BannerRotater.aspx.cs.txt

Og det virker! Der kom i hvert fald nogle flash reklamer i min test ;-)
Avatar billede arne_v Ekspert
29. marts 2006 - 05:32 #10
hvis det kun var images ville jeg nok lave det med:

<script language="C#" runat="server">
private static Random rng = new Random();
void Page_Load(Object sender, EventArgs e)
{
    int num = rng.Next(3) + 1;
    pic.Src = "pic" + num + ".jpg";
}
</script>
<img id="pic" runat="server"/>

det der JavaScript vil jeg ikke gøre mig klog på
Avatar billede qqq Nybegynder
31. marts 2006 - 22:51 #11
dj_uncas >> Det ser ud til at virke fint, tak for det. Læg venligst et svar, så skal jeg give dig point. Jeg har lovet dig dobblt point, men jeg kan ikke længere se at det er muligt at forhøje point til et spørgsmål? Ellers så opretter jeg bare et seperat spørgsmål for at du kan få de resterende point.

arne_v >> Tak, jeg kunne også godt bruge dit eksempel, læg derfor også svar, så får du også lidt point.
Avatar billede arne_v Ekspert
31. marts 2006 - 22:57 #12
svar
Avatar billede arne_v Ekspert
31. marts 2006 - 22:57 #13
om igen
Avatar billede dj_uncas Nybegynder
01. april 2006 - 12:41 #14
og her..
Avatar billede qqq Nybegynder
02. april 2006 - 22:02 #15
dj_uncas >> De ekstra point finder du her:
http://www.eksperten.dk/spm/700113
Avatar billede dj_uncas Nybegynder
02. april 2006 - 22:04 #16
Jeg har også lige svaret derovre.. ;-)
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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