Avatar billede mortency Nybegynder
15. oktober 2003 - 12:13 Der er 5 kommentarer og
1 løsning

Skrive til fil med FileSystemObject og hente data.

Jeg har tenkt å lage et form skjema med flere input fields.
Scriptet skal skrive til feltene og hente de på nytt.

Noe som dette:

<%
Dim strAction
strAction = Request.QueryString("Action")

If strAction = "write" Then
    'SKal skrive til en fil
Else
    'skal hente data til de forskjellige input feltene
End if
%>
<html>
<body>
<form action="input.asp?Action=write" method="post">
Text 1<INPUT type="text" id=text1 name=text1><br>
Text 2<INPUT type="text" id=text2 name=text2><br>
Text 3<INPUT type="text" id=text3 name=text3><br>
<INPUT type="submit" value="Submit" id=submit1 name=submit1>
</form>
</body>
</html>
Avatar billede medions Nybegynder
15. oktober 2003 - 12:15 #1
<%
Dim strAction
strAction = Request.QueryString("Action")

If strAction = "write" Then
Dim fso, f, filespec
Set fso = CreateObject("Scripting.FileSystemObject")
filespec = Server.Mappath("/tutorials/asp/tekstfil.txt")
Set f = fso.OpenTextFile(filespec,2)

' Skriv tekst i en linie
f.WriteLine "VBScript og ASP er sjovt!"

' Åbn filen til læsning og læs linie
Set f = fso.OpenTextFile(filespec,1)
Response.write f.ReadLine

f.Close

Else
Dim fso, f, filespec
Set fso = CreateObject("Scripting.FileSystemObject")
filespec = Server.Mappath("/tutorials/asp/ministerier.txt")
Set f = fso.OpenTextFile(filespec,1)

' Læs linie for linie indtil slutningen af filen
Do While not f.AtEndOfStream
  Response.write f.ReadLine & "<br>"
Loop

f.Close

End if
%>
<html>
<body>
<form action="input.asp?Action=write" method="post">
Text 1<INPUT type="text" id=text1 name=text1><br>
Text 2<INPUT type="text" id=text2 name=text2><br>
Text 3<INPUT type="text" id=text3 name=text3><br>
<INPUT type="submit" value="Submit" id=submit1 name=submit1>
</form>
</body>
</html>

//>Rune
Avatar billede mortency Nybegynder
15. oktober 2003 - 12:26 #2
//RUNE

<%
Dim strAction
strAction = Request.QueryString("Action")
Dim strText1
strText1 = Request.Form("text1")
Dim strText2
strText2 = Request.Form("text2")
Dim strText3
strText3 = Request.Form("text3")

Dim fso, f, filespec

If strAction = "write" Then
    Set fso = CreateObject("Scripting.FileSystemObject")
    filespec = Server.Mappath("test.asp")
    Set f = fso.OpenTextFile(filespec,2)

    ' Skriv tekst i en linie
    f.WriteLine "Dim strText1" & vbCrLf & "strText1 = " & strText1 & vbCrLf
    f.WriteLine "Dim strText2" & vbCrLf & "strText2 = " & strText2 & vbCrLf
    f.WriteLine "Dim strText3" & vbCrLf & "strText3 = " & strText3 & vbCrLf

    ' Åbn filen til læsning og læs linie
    Set f = fso.OpenTextFile(filespec,1)
    Response.write f.ReadLine

    f.Close
Else
    Set fso = CreateObject("Scripting.FileSystemObject")
    filespec = Server.Mappath("test.asp")
    Set f = fso.OpenTextFile(filespec,1)

    ' Læs linie for linie indtil slutningen af filen
    Do While not f.AtEndOfStream
      Response.write f.ReadLine & "<br>"
    Loop

    f.Close
End if
%>
<html>
<body>
<form action="input.asp?Action=write" method="post">
Text 1<INPUT type="text" id=text1 name=text1><br>
Text 2<INPUT type="text" id=text2 name=text2><br>
Text 3<INPUT type="text" id=text3 name=text3><br>
<INPUT type="submit" value="Submit" id=submit1 name=submit1>
</form>
</body>
</html>

Den skal hente strText1 i input 1, strText2 i input 2 osv
Avatar billede medions Nybegynder
15. oktober 2003 - 12:27 #3
? Hvad mener du?

//>Rune
Avatar billede mortency Nybegynder
15. oktober 2003 - 12:31 #4
1 minutt så skal jeg forklare.
Avatar billede mortency Nybegynder
15. oktober 2003 - 12:43 #5
//RUNE FÅR DEN IKKE TIL Å SKRIVE <% og %> ellers så virker det som jeg vil.

<!--#include file ="test.asp"-->
<%
Dim strAction
strAction = Request.QueryString("Action")
Dim strText1
strText1 = Request.Form("text1")
Dim strText2
strText2 = Request.Form("text2")
Dim strText3
strText3 = Request.Form("text3")

Dim fso, f, filespec

If strAction = "write" Then
    Set fso = CreateObject("Scripting.FileSystemObject")
    filespec = Server.Mappath("test.asp")
    Set f = fso.OpenTextFile(filespec,2)

    ' Skriv tekst i en linie
    'f.WriteLine "<%" & vbCrLf
    f.WriteLine "Dim strText1_1" & vbCrLf & "strText1_1 = """ & strText1 & """" & vbCrLf
    f.WriteLine "Dim strText2_1" & vbCrLf & "strText2_1 = """ & strText2 & """" & vbCrLf
    f.WriteLine "Dim strText3_1" & vbCrLf & "strText3_1 = """ & strText3 & """" & vbCrLf
    'f.WriteLine "%  >"

    f.Close
End if
strText1 = "HALLO"
%>
<html>
<body>
<form action="input.asp?Action=write" method="post">
Text 1<INPUT type="text" id=text1 name=text1 value="<%=strText1_1%>"><br>
Text 2<INPUT type="text" id=text2 name=text2 value="<%=strText2_1%>"><br>
Text 3<INPUT type="text" id=text3 name=text3 value="<%=strText3_1%>"><br>
<INPUT type="submit" value="Submit" id=submit1 name=submit1>
</form>
</body>
</html>
Avatar billede mortency Nybegynder
15. oktober 2003 - 16:12 #6
//RUNE
Dette virker helt fint. Bruker det til å lage filen som har globale variabler som vises på alle sider. Pointene er dine.

<!--#include file ="global_variables.asp"-->
<%
Dim strAction
strAction = Request.QueryString("Action")
Dim strText1
strText1 = Request.Form("text1")
Dim strText2
strText2 = Request.Form("text2")
Dim strText3
strText3 = Request.Form("text3")

Dim fso, f, filespec

If strAction = "Write" Then
    Set fso = CreateObject("Scripting.FileSystemObject")
    filespec = Server.Mappath("global_variables.asp")
    Set f = fso.OpenTextFile(filespec,2)

    f.WriteLine "<" & chr(37)
    f.WriteLine "Dim strText1_1" & vbCrLf & "strText1_1 = """ & strText1 & """" & vbCrLf
    f.WriteLine "Dim strText2_1" & vbCrLf & "strText2_1 = """ & strText2 & """" & vbCrLf
    f.WriteLine "Dim strText3_1" & vbCrLf & "strText3_1 = """ & strText3 & """"
    f.WriteLine chr(37) & ">"

    f.Close
   
    Response.Redirect("input.asp")
End if
%>
<html>
<body>
<form action="input.asp?Action=Write" method="post">
Text 1<INPUT type="text" id=text1 name=text1 value="<%=strText1_1%>"><br>
Text 2<INPUT type="text" id=text2 name=text2 value="<%=strText2_1%>"><br>
Text 3<INPUT type="text" id=text3 name=text3 value="<%=strText3_1%>"><br>
<INPUT type="submit" value="Submit" id=submit1 name=submit1>
</form>
</body>
</html>
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester