jag har ett grymt bra och enkelt beställningsformulär som bl.a Erik hjälpt mig att göra. Det bygger på en <form> och en .ASP-fil som skickar mailet.
Jag får alltså alla beställningar som skickas med formuläret via mail. Och nu vill jag att varje beställning ska ha ett unikt ordernummer, t.ex Erik01, Erik02, Erik03 osv osv. Planen är ju att inte använda en databas utan att lagra dessa nummer i en textfil...
Jag hoppas ni förstår vad jag menar. Hur skulle en kod för detta se ut?
det vore väl att börja räkna från 1, 100 eller vad som önskas, så första ordern blir FP100, så när nästa order görs så hämtas sista raden från textfilen, där förhoppningsvis FP100 finns, och plockar ut siffrorna och ökar med 1 och sparar den nya ordern som då blir FP101, har inget kodexempel, det är bara en tankegång! :)
Det räcker kanske med en räknare.
Skapa en textfil som du döper till ex. my_count.txt
och se till att du har skrivrättigheter i katalogen.
Class uniqueId
Private fn, objFso
Public property Let Filename(value)
fn = value
End property
Private Function GetLastID()
Dim objFile
on error resume next
set objFile = objFso.OpenTextFile(fn, 1)
If err.number = 62 then
GetLastID = 0
Else
GetLastID = trim(objFile.ReadLine)
End if
objFile.Close : Set objFile = Nothing
End Function
Private Function SetUniqueId()
Dim lastRow
lastRow = GetLastID()
set objFile = objFSO.OpenTextFile(fn, 2)
lastRow = cStr(cLng("0"& lastRow)+1)
objFile.Write lastRow
SetUniqueId = lastRow
objFile.Close : Set objFile = Nothing
End Function
Public Function MakeUniqueId()
Set objFso = Server.CreateObject("Scripting.FileSystemObject")
MakeUniqueId = SetUniqueId()
Set objFso = Nothing
End Function
End Class
Dim q
Set q = new uniqueId
q.Filename = Server.Mappath(".") & "\my_count.txt"
Response.write "SuperID_"& q.MakeUniqueId()
Set q = nothing
260 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849