då vill jag slumpa bland alla nyheter.
men samma nyhet ska inte kunna bli 2 ggr.
fast jag slumpar den 5 ggr.
ReDim Order(5),Svar(5)
' Pos 0 är rätt svar, övriga är fel svar '
Order(0) = 0 'Plats för rätt svar'
Order(1) = 1
Order(2) = 2
Order(3) = 3
Order(4) = 4
For i = 0 To Ubound(order)
Randomize
slump = Int(Rnd * Order(i))+1
response.write slump
Next
Alltså slumptalet ska inte kunna komma 2 gånger då jag skriver ut det.
talen 0-4 ska slumpas ut i slumpad ordning.
blnSlump = False
i = 0
Do Until blnSlump
Randomize
intSlump = Int(Rnd * UBound(Order)) + 1
If InStr(strSlump, intSlump) = 0 Then
strSlump = strSlump & " " & intSlump
If i = UBound(Order) - 1 Then
blnSlump = True
End If
i = i + 1
End If
Loop
Response.Write(strSlump)
Kan man dela in strslump i en array för just nu står det då man skriver
response.write (strslump)
står det 1 2 3 4 5.
Är lite dålig än på arrayer men jag håller på o försöka lära mig.
Bara man får se koden några gånger brukar den sätta sig i lillhuvudet efter ett tag.
Tacksam för snabbt svar.
Jag körde denna kod, om det står 9 i arrayen så funkar det utmärkt , men när det är 10 så krashar IIS.
ReDim Order(10)
blnSlump = False
i = 0
Do Until blnSlump
Randomize
intSlump = Int(Rnd * UBound(Order)) + 1
If InStr(strSlump, intSlump) = 0 Then
strSlump = strSlump & " " & intSlump
If i = UBound(Order) - 1 Then
blnSlump = True
End If
i = i + 1
End If
Loop
Response.Write(strSlump)
Jag är nybörjare på asp och undrar om någon vänlig själ kan och vill omvandla den här koden (eller har en annan bättre) till en komplett kod från if till end if som slumpar ut dessa includes i random ordning (utan att någon include upprepas).
så att vid nästa sidvisning kan det bli t.ex. så här:
Nej Brorsan. Du kan inte köra dynamisk kod i din include sträng. Om du skulle köra en sådan kod så blir det extremt ohålbart i längden. använd en databas för att lagra dina anonskoder och kör ut 1x med random.
Hm, tack för svar. Problemet är att jag vet 0 om databaser, så jag kan inte lägga till det du säger. Har letat efter konsult att anlita timvis, men alla är busy till och med på arbetsförmedlingen.
Databasen är också rätt belastad och långsam, så tror jag tjänar på att inte blanda in den.
Behöver också scriptet på tisdag och hinner inte plugga databas i helgen, så måste skapa något tillfälligt.
Men jag kan ju provisoriskt testa använda ett slumpscript så länge som säger:
om slumptal = 1 then
(och annonserna uppradade i en ordning)
om slumptal = 2 then
(annonserna uppradade i en annan ordning)
om slumptal = 3 then
(annonserna uppradade i en tredje ordning)
och detta kan ju göras antingen genom att ha includes i olika ordning eller själva koden för annonserna direkt i olika ordning utan includes (vilket blir jobbigare eftersom varje kod då står 3-8 ggr beroende på antal annonsörer)
så om jag använder denna kod, hur jobbigt är det då för servern att bara lägga in 3-8 små includes? Är det kännbart?
Har på de flesta sidor ca 8 includes redan, menyer, databasscript osv.
Ditt sätt som du skriver kommer att fungera men knappast något man hade använt i längden. Underhållning + uppdatering av .asp filen kommer bli betydligt jobbigare än att göra en enkel admin-gränssnitt för snabb uppdatering / inlägg av nya annonser.
Du behöver inte använda dig av include om du inte vill. du kan ju alltid skriva in dina annons koder inne i din if fråga. så slipper du ha 8 filer att hålla koll på.
ok, noterat och jag ska kolla med arbetskraft där.
har ingen aning ifall de är krävande, you tell me! =) har inte läst en enda rad i nån bok/tutorial om asp-kodande utan bara tagit över en sida och lärt mig lite praktik genom att pyssla i koden, så jag vet 0 teori.
fast jag föredrar nog att ha 8 filer (döpta liknande och lätta att hitta) och bara ändra i en av dem när kunden vill byta annonsupplägg än att ha 8 ställen att byta på för en ändring och riskera att missa en av dem osv.
så min fråga är mer om 3-8 includes tar mycket extra kraft och tid rent servermässigt eller om det är marginellt?
jag kommer nästan enbart ha långsiktiga kunder med typ årsavtal, så är mer mån om att servern klarar det hela än att det ska vara supersmidigt för mig själv.
1. "Krävnade"... det är nog ingen skala från 1-10 direkt man går på. Om du kodar dåligt så kommer sidan bli långsammare än om du kör mot en databas... det krävs lite extra kraft men vi snackar inte direkt med att datorns CPU ta 50% bara för att öppna en db koppling.
mitt tips är: gå på det som fungera för dig. Nu om du har tidspress och inte bestitter alla kunskaper inom ASP / databaser så kan man ju inte direkt lägga ner all sin tid på något som _kan_ fungera till leverans. Du får nog helt enkelt göra på det sätt du vet att det kommer fungera till leverans.