---
title: "Unikt ID på Microdatorns webshopp"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/8600-unikt-id-på-microdatorns-webshopp"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "saw"
published: "2001-03-18T12:18:00.000Z"
updated: "2001-03-19T12:33:00.000Z"
replies: 4
views: 253
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/8600-unikt-id-på-microdatorns-webshopp"
---

# Unikt ID på Microdatorns webshopp

## #1 — saw, 2001-03-18T12:18Z

Jag håller på att labba med microdatorns webshop, och är inte nöjd med deras "unika" SessionsessionID som jag inte får att fungera bra.
Därför så tänkte jag att det unika numeret får bli såhär:

Första delen dagens datum + "-" och "1001" som då skall räknas upp får varje beställare.
Tabellen heter Kunder, fält bl a SessionID och Datum. Session id:s datatyp är text, datum är datum/tid.
Jag försöker så här:

'FUNKTION FÖR ATT FÅ TILL ETT NYTT ANVÄNDARID
MAX = "SELECT MAX(SessionId) FROM KUNDER"
SET mx = Connection.Execute(MAX)

Dat = "SELECT MAX(Datum) FROM KUNDER"
SET dt = Connection.Execute(Dat)

'\*\*\*
Ar=year(date())
'om månaden bara har en siffra(t ex 3)
if LEN(month(date())) = 1 THEN
Man= 0 & month(date())
ELSE
Man =  month(date())
End If
'om dagen bara har en siffra(t ex 3)
if LEN(day(date())) = 1 THEN
Dag= 0 & day(date())
ELSE
Dag =  day(date())
End If
'\*\*\* 

strNr=Cint(Right(mx(0),4))

If dt(0) \<\> date () Then

AnvID = Ar & Man & Dag & "-" & "1001"
Else
AnvID = Ar & Man & Dag & "-" & strNr + 1

End If

Session("AnvId") = AnvId

Teoretiskt set så borde det fungera, men den vill inte räkna upp talet(1001)

Informationen om Session("AnvID") läggs in med denna SQL när någonting har beställts:

SQLStmt = SQLStmt & "VALUES('" & Session("AnvId") & "', '" & Request.Form("Namn") & "', '" & Request.Form("Adress") & "', '" & Request.Form("Postnummer") & "', '" & Request.Form("Ort") & "', '" & Request.Form("Tel") & "', '" & Request.Form("Epost") & "', '" & Request.Form("Ordermarkning") & "' , '" & Request.Form("Refferens") & "', '" & date() &"')"

Någon som har ett bättre förslag???

Permalänk: https://www.webforum.nu/p/8600

## #2 — Vide, 2001-03-18T12:45Z

Tja, skall du inte använda SessionId (som är unikt för varje användare), så skulle jag använda ett Random nummer, t.ex:

Randomize
tal = Rnd\*100

Mvh, Vide

Permalänk: https://www.webforum.nu/p/261409

## #3 — bulow, 2001-03-19T01:32Z

Exakt. Ett slumptal som du dessutom skriver ner i en logfil när det genereras.

Sedan när nästa id ska genereras så kontrollerar du i logfilen att det inte redan finns ett sådant nummer. 

På så sätt får du ett garranterat unikt ID.

//Micke

Permalänk: https://www.webforum.nu/p/261410

## #4 — hakangus, 2001-03-19T09:42Z

Använder själv sessionid som identifiering. Vad är det som inte fungerar?

Permalänk: https://www.webforum.nu/p/261411

## #5 — Eclipse, 2001-03-19T12:33Z

Öööhhh....

Deras lösning kan väl endå inte kallas direkt genomtänkt om man måste slumpa fram en egen userID!?

Alla tabeller har ju räknare. Varför kan inte MicroDatorn men alla andra använda dom då?

Jag är öppen för förslag.

Permalänk: https://www.webforum.nu/p/261412

---

Tråden på webben: https://www.webforum.nu/amne/asp/8600-unikt-id-på-microdatorns-webshopp
