Rreka1Medlem sedan sep. 2001650 inlägg Go'kväll!
Försöker få till att ett unikt nummer ska skapas, men om det numret redan existerar i databasen ska då ett nytt genereras ändå tills ett ledigt nummer slumpas fram.
Som koden är nu så blir det ingen omgenerering.
Kanske ngn som är mer kunnig kan ge mig en knuff.
dim boknr, r
'Skapar bokningsnummer
function kontroll
'skapar ett bokningsnummer
randomize
boknr = Int(Rnd * 19999999)
r = false
'hämtar bokningsnummer
kolla = ("select boknr from losenord")
set rs = con.execute(kolla)
do until rs.eof
'om bokningsnumret redan finns bryts loopen o ändrar r till true
if rs("boknr") = boknr then
r = true
exit do
end if
rs.MoveNext
loop
end function
'anropar funktion
kontroll
'kontrollerar om bokningsnumret redan fanns eller inte
if r = true then
'det fanns, kör kontrollen igen
kontroll
elseif r = false then
'sql som utförs om bokningsnumret inte existerade
end if
SSebbeMedlem sedan jan. 20032 285 inlägg Går det kanske bättre såhär?
<%
strSQL = "SELECT boknr FROM losenord"
Set objRS = con.Execute(strSQL)
Randomize
intSlump = Int(Rnd * 19999999)
Do Until objRS.EOF
strFinns = strFinns & " " & objRS("boknr")
objRS.MoveNext
Loop
Do Until blnDone
If InStr(strFinns, intSlump) <> 0 Then
intSlump = Int(Rnd * 19999999)
Else
' Gör grejen...
blnDone = True
End If
Set objRS = Nothing
%>
/red Gjorde om koden...
PeeerMedlem sedan mars 20025 907 inläggfunction boknr()
randomize
boknr = Int(Rnd * 19999999)
end function
gammalt = true
Do while gammalt
tmp = boknr()
sql = "select boknr from losenord where boknr =" tmp
set rs = con.execute(sql)
if rs.eof
'Bokningsnumret fanns inte i databasen, spara det!
con.execute("insert into losenord (boknr) values ("&tmp&")")
con.close
gammalt = false
End if
Loop
@ndersMedlem sedan juni 200032 967 inläggOT: Använd inte [php]-taggar till asp-kod. Det gör bara koden mer svårläst, eftersom färgkodningen blir helt off.
Mvh