just nu skapar jag en medlems id med denna funktion:
Function id(word)
Dim idet
Const idChars = "abcdefghikjlmopqrstuvwxyzABCDEFGHIJKLMNOPPQRSTUVWXYZ0123456789"
Randomize
For i = 1 To 20
idet = idet & mid (idChars, int(rnd*len(idChars))+1, 1 )
Next
id = idet
End Function
men hur stor är sanolikheten att någon får likadant id?
hur fixar man så att den kollar om id:et finns, annars så slumpar den om på nytt??
Lagrar du din information i en databas? Isåfall kan din databas säkerligen skapa ett unikt id, vilket garanterar att id inte blir dubblerat.
Det är dumt att skapa ett id som du gör.
För att kolla, du lagrar väl ditt slumpade id i en databas? Gör en slagnng mot databasen och kontrollera att id:et inte finns, ifall det finns, slumpa ett nytt.
Om du använder en databas för att lagra dina medlemmar, så kan du (om du inte använder mySql) använda dig av ett replikations-id istället. Detta ställer du in i access/MS-Sql.
Då kommer du inte att få lika medlems-id:en iaf.
hmm... men alltså när man kör auto_increment... kör den inte direkt från 1 och så vidare upp... förlåt om jag inte riktigt förstår hur du menar :S suttit framför datorn några timmar nu så jag är lite borta =P
hmm... men alltså när man kör auto_increment... kör den inte direkt från 1 och så vidare upp... förlåt om jag inte riktigt förstår hur du menar :S suttit framför datorn några timmar nu så jag är lite borta =P
alltså.... varje medlem måste ju ha ett unikt id... och jag vill inte att det ska vara 1,2,3 osv... därför slumpa jag då ut ett id, som skulle kunna jämföras med replikations-id i access...
Jag tycker det verkar onödigt att krångla till ett ID med massa tecken om det inte behövs.
Om du måste så är det bara att använda din funktion. Kontrollera om ID:t redan finns
blnIsUnique = False
While Not blnIsUnique
strSql = "SELECT memberID FROM tabell WHERE ID = " & id
objRS.Open strSql, [i]Connection[/i]
If objRS.EOF Then blnIsUnique = True
objRS.Close
Wend
Typ...
253 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849