webForumDet fria alternativet

zUniqueNumber

ASP

0 svar · 785 visningar · startad av PatrikB

Medlem sedan mars 20002 836 inlägg
Frågan#1

Hello,

här kommer ett script som ni kan använda er av om ni tex vill tippa lotto, måltips, keno eller ngt annat nummer spel då ni vill ha ut tex 8 unika nummer från 1 tom 30.

Så här ser själva Subben ut:

<%
Response.Buffer = True

'--------------------------------------------------------------------
' Get unique numbers
'--------------------------------------------------------------------
' Script written by - Patrik Berggren
' Email: mrwize@mrwize.nu
' Homepage: [url="http://www.mrwize.nu"]http://www.mrwize.nu[/url] 
'--------------------------------------------------------------------
Sub GetNo(ByRef intUniqueNo, ByRef intTotNo)

' Check If total numbers is fewer than wanted uniques
'----------------------------------------------------
If intUniqueNo >= intTotNo Then
		Response.Write "Total unique numbers, (" & intUniqueNo & _
			"), has to be fewer than total numbers, (" & _
		intTotNo & "), to choose from."

		Exit Sub
End If

Randomize

' Get first unique number
'------------------------
intAllNo = "#" & CInt((RND * (intTotNo - 1)) + 1) & "#"

' Start position
'---------------
n = 1

' Get unique numbers
'-------------------
While Not n = intUniqueNo

	intNewNo = CInt((RND * (intTotNo - 1)) + 1) & "#"

	' check if the new number is unique
	'----------------------------------
	If InStr(intAllNo,"#" & intNewNo) Then
		n = n
	Else
		intAllNo = intAllNo & intNewNo
		n = n + 1
	End If

Wend	' next unique number

' create an array out of all unique numbers
'------------------------------------------
arrAllNo = Split(intAllNo,"#")

' Create a recordset
'-------------------
Set objRS = Server.CreateObject("ADODB.Recordset")
	objRS.Fields.Append "FLD_NUMBER", 3, Len(intUniqueNo)
	objRS.Sort = "FLD_NUMBER ASC"
	objRS.Open

' set all unique numbers into recordset
' to sort ascending
'--------------------------------------
For i = 1 To UBound(arrAllNo) - 1
	objRS.AddNew
	objRS("FLD_NUMBER") = arrAllNo(i)
	objRS.Update
Next

	' Show user all unique numbers
	'-----------------------------
	objRS.MoveFirst
	Do Until objRS.EOF
		iNo = iNo + 1
		Response.Write("Nr " & iNo & ": " & objRS("FLD_NUMBER") & "<br>")
		objRS.MoveNext
	Loop
	objRS.Close
Set objRS = nothing
End Sub
%>

Där ni vill få fram nummrena, tex Keno nummer - 20 av 70:

<font size="1" face="Verdana, Arial, Helvetica, sans-serif">Kod:<font size="1" face="Verdana, Arial, Helvetica, sans-serif" color="#006666">
<%
Call GetNo(20,70)
%>

Hittar ni buggar hoppas jag att ni meddelar det, eller andra synpunkter.

cya,
PatrikB

------------------
=================================
** ZWGdesign **
=================================

[Redigerat av PatrikB den 06 okt 2000]

265 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
137 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)