Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Randomize

Postades av 2007-01-23 11:51:13 - Jan Hed, i forum asp - allmänt, Tråden har 4 Kommentarer och lästs av 552 personer

Har en sida (micronavigator.se) där besökare kan lägga in länkar till sina hemgjorda sajter under valfri kategori.
När man lagt till sin länk slumpas ett lösenord fram som man sedan använder vid ändring eller radering.

Mitt mysko problem är om man lagt till en en länk och sedan väljer radera.
Lägger man sedan till en ny länk, så får man samma lösenord som det man just raderat.
Brukar inte hända på första försöket, men därefter.

UserIDFlag=true
While UserIDFlag
Randomize

myArray(0)="1"
myArray(1)="2"
myArray(2)="3"
...
myArray(33)="z"

myStr=""
for j=1 to 4
no=(33 - 0 + 1) * rnd + 0
myStr=myStr & myArray(int(no))
next

mySql="select linkid from link where userid='" & myStr & "'"
Set myRs = myConnection.Execute(mySql)
if myRs.eof then
UserIDFlag = false
end if
Wend

While-satsen är till för att undvika att flera får samma lösenord.
Hoppas någon förstår vad jag menar och har ett bra svar :)


Svara

Sv: Randomize

Postades av 2007-01-24 12:16:16 - Pelle Johansson

Kan vara för att Randomize() kommandot ligger inne i while-loopen. Du bör också stänga myrs varje gång där- det kommer suga minne annars. Du borde även deklarera myarr utanför while-loopen, det görs annars om och om igen vilket tar tid också..

Exempel:

<code>
Function gen_key(iKeyLength)
Dim strOutput
Dim char_array
char_array = Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", _
"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", _
"K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", _
"U", "V", "W", "X", "Y", "Z")

Randomize()

Do While Len(strOutput) < iKeyLength
strOutput = strOutput & char_array(Int(36 * Rnd()))
Loop

gen_key = strOutput
End Function
</code>

Sedan rutinen som körs vid registreringen innan man skapar den nya användaren

<code>
medlemsnr = gen_key(12)

do
set rst = con.execute("select count(1) from tblUser where password = '" & medlemsnr & "'")
if not (rst.eof or rst.bof) then
if rst(0) > 0 then
medlemsnr = gen_key(12)
rst.close
else
exit do
end if
else
exit do
end if
loop
rst.close
set rst=nothing

</code>


Svara

Sv:Randomize

Postades av 2007-01-25 14:21:35 - Jan Hed

Flyttade ut array-initieringen och randomize.
Måste man stänga myRs (recordset) varje gång efter databashämtning?
Trodde man kunde göra det sist på asp-sidan, när man är färdig med alla hämtningar.
(att den använde samma utrymme vid varje hämtning)

Testade en "fuskis", att mha application spara senaste lösenordet och därmed kunna undvika det. Det funkar iofs, men jag ser att det ofta väljs gamla lösenord lite senare. Något är skumt med slumpen i rnd, VAD.

<code>
if (myRs.eof) and (application("new") <> myStr) then
UserIDFlag = false
application("new") = myStr
end if
</code>


Svara

Sv: Randomize

Postades av 2007-01-29 22:54:54 - Jan Hed

Hur kan man få samma slumptal vid olika besök på sidan?
Även om jag tar en annan browser så får jag samma slumptal.
Randomize ska ju skapa ett frö från systemtiden. Inte har väl asp-motorn någon slags cache som minns tidigare besök. Vad jag lärt mig är varje besök unikt.

Hur noggrann är systemtiden? Antar att den går ner på iaf tiondelar för att skapa unika värden.


Svara

Sv:Randomize

Postades av 2007-01-30 21:04:22 - Andreas Hillqvist

Lite mindre kod för loopen:

Dim NotFound
    Set rst = CreateObject("ADODB.Recordset")
    Do
        medlemsnr = gen_key(12)
        rst.Open "SELECT Null FROM tblUser WHERE password = '" & medlemsnr & "'", con
        NotFound = rst.eof
        rst.Close
    Loop Until NotFound


Svara

Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 169
27 952
271 704
754
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies