webForumDet fria alternativet

fråga!

ASP

8 svar · 253 visningar · startad av Nick

Medlem sedan jan. 200347 inlägg
Frågan#1

om vi säger att jag läser in en text-databas där en rad ser ut så här:

AnvändarNamn;Riktigtnamn;pass;osv

och innan jag skriver en ny rad i batabasen så vill jag kolla om användarnamnet redan finns? kan man läsa in till ";" och sedan gemföra det med det namn som försöker läggas till?

så här har jag skrivit koden hittils! några tipps?

<% 
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
set objFile = objFSO.OpenTextFile( "C:\Program\RaidenMAILD\users.cfg", 8 )

		
If request("Anamn") = "" then
   'händelse1
   response.write("Error fyll i uppgifterna")
Else
If request("Rnamn") = "" then
   'händelse1
   response.write("Error fyll i uppgifterna")
Else
If request("L2") = "" then
   'händelse1
   response.write("Error fyll i uppgifterna")
Else
If request("L1") = request("L2") then
objFile.writeline request("Anamn") & ";" & request("Rnamn") & ";" & request("Doman") & ";"& "50" & ";" & "1" & ";" & request("L2") & ";;;0;;0;0;0;;0;0;0;0;;0;0"

objFile.Close
Set objFile = Nothing
Set objFso = Nothing
Response.Write("<center>DU e nu typ RegiZtRerad i typ daTabAzen, dIn koNtO KoMmer att bLi ActiVEJAt om ca 5 mIn.... lykka typ tE å hOpPaz att du tjiVz! *skrattar*</venter>" )
Else
Response.Write("Du uppgav inte samma lösenord 2 gånger")
End if
End if
End if
End if
%>
Medlem sedan mars 20015 287 inlägg
#2

RED. eller... glöm mig, borde sova.

Medlem sedan okt. 20023 030 inlägg
#3

För det första, varför har du två Set objFSO = Server.CreateObject("Scripting.FileSystemObject") ?

<% 
Dim objFSO, objFile
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
set objFile = objFSO.OpenTextFile( "C:\Program\RaidenMAILD\users.cfg")

While Not objFile.AtEndOfLine
    If request("Anamn") = Split(objFile.ReadLine, ";")(0) Then
        Fanns = True
    End If
Wend

objFile.Close

If Not Fanns Then
    set objFile = objFSO.OpenTextFile( "C:\Program\RaidenMAILD\users.cfg")

    If request("Anamn") = "" Or request("Rnamn") = "" Or request("L2") = "" then
       'händelse1
       response.write("Error fyll i uppgifterna")
    End If
    If request("L1") = request("L2") then
        objFile.writeline request("Anamn") & ";" & request("Rnamn") & ";" & request("Doman") & ";"& "50" & ";" & "1" & ";" & request("L2") & ";;;0;;0;0;0;;0;0;0;0;;0;0"

        Response.Write("<center>DU e nu typ RegiZtRerad i typ daTabAzen, dIn koNtO KoMmer att bLi ActiVEJAt om ca 5 mIn.... lykka typ tE å hOpPaz att du tjiVz! *skrattar*</center>" )
    Else
        Response.Write("Du uppgav inte samma lösenord 2 gånger")
    End if
    objFile.Close
Else
    Response.Write("Användaren finns redan")
End If

Set objFile = Nothing
Set objFso = Nothing
%>

Detta borde fungera.

Medlem sedan mars 20015 287 inlägg
#4

Nexus: Var för stäng o sen öppna?

<% 
Dim objFSO, objFile
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
set objFile = objFSO.OpenTextFile( "C:\Program\RaidenMAILD\users.cfg")

While Not objFile.AtEndOfLine
    If request("Anamn") = Split(objFile.ReadLine, ";")(0) Then
        Fanns = True
    End If
Wend

If Not Fanns Then
    If request("Anamn") = "" Or request("Rnamn") = "" Or request("L2") = "" then
       'händelse1
       response.write("Error fyll i uppgifterna")
    End If
    If request("L1") = request("L2") then
        objFile.writeline request("Anamn") & ";" & request("Rnamn") & ";" & request("Doman") & ";"& "50" & ";" & "1" & ";" & request("L2") & ";;;0;;0;0;0;;0;0;0;0;;0;0"

        Response.Write("<center>DU e nu typ RegiZtRerad i typ daTabAzen, dIn koNtO KoMmer att bLi ActiVEJAt om ca 5 mIn.... lykka typ tE å hOpPaz att du tjiVz! *skrattar*</center>" )
    Else
        Response.Write("Du uppgav inte samma lösenord 2 gånger")
    End if

Else
    Response.Write("Användaren finns redan")
End If

objFile.Close
Set objFile = Nothing
Set objFso = Nothing
%>
Medlem sedan okt. 20023 030 inlägg
#5

Därför att sist jag provade med att inte göra det sa den "Wrong file mode" på WriteLine.

Medlem sedan jan. 200347 inlägg
#6

Feltyp:
Körningsfel i Microsoft VBScript (0x800A0036)
Felaktigt filåtkomstläge
/asp/addusers.asp, line 18

Line18= objFile.writeline request("Anamn") & ";" & request("Rnamn") & ";" & request("Doman") & ";"& "50" & ";" & "1" & ";" & request("L2") & ";;;0;;0;0;0;;0;0;0;0;;0;0"
Medlem sedan mars 20015 287 inlägg
#7

Hupp... :r

Där ser man. Jag ska nog hålla tyst.

Medlem sedan juni 200032 967 inlägg
#8

set objFile = objFSO.OpenTextFile( "C:\Program\RaidenMAILD\users.cfg", ForWriting)

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/jsobjfilesystem.asp

mvh

Medlem sedan jan. 200347 inlägg
#9

tack lyckade fixa det..

737 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
118 ms — deklarationer (db)
0 ms — hämta statistik (cache)
602 ms — hämta tråd, inlägg och bilagor (db)
130 ms — ändringar (db)