Avatar billede willi Nybegynder
31. august 2003 - 15:08 Der er 9 kommentarer og
1 løsning

Asp form med skrive/læse rettigheder til .txt fil

Hej.
Jeg har denne kode fra html.dk

<html>
<title>Læse fra tekstfiler</title>
<head>
</head>
<body>
<%
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.Write Request.Form("tekstblok")

' Åbn filen til læsning og Læs linie for linie
Set f = fso.OpenTextFile(filespec,1)
Do While not f.AtEndOfStream
  Response.write f.ReadLine & "<br>"
Loop
f.Close
%>
</body>
</html>

Men i browseren kommer der ingen form frem.
Der er skriverettigheder til Inetpub/wwwroot (jeg har også prøvet på mit webhotel.

Er der nogen der kan se hvad der er galt med koden?

I denne forbindelse har jeg også oprettet et sp. i IIS katagorien. Men det drejer sig dog om noget forskelligt.
http://www.eksperten.dk/spm/394585
Avatar billede eagleeye Praktikant
31. august 2003 - 15:19 #1
Får du en fejl eller hænger siden??

Det enste jeg umiddelbart kan se er at hvis filen ikke findes vil den fejle.

En anden ting, husker du at POST'e data til siden for det den skriver til filen er fra et formø-input

' Skriv tekst i en linie
f.Write Request.Form("tekstblok")


Du kan for test evt skriver noget fast tekst:

' Skriv tekst i en linie
f.Write "juuubii det kom i filen"
Avatar billede willi Nybegynder
31. august 2003 - 15:26 #2
Jeg har pørvet at teste.
f.Write "juuubii det kom i filen" kommer med i browserens vindue såvel som det ligger i tekstfil.txt.
Avatar billede eagleeye Praktikant
31. august 2003 - 15:29 #3
Ok.

Men den skriver ikke noget når du ligger det i med Request.Form("tekstblok")  ??

Så tjek på at dit form input hedder "tekstblok"
Og tjek du har method="post" i <form>-tagen.
Avatar billede willi Nybegynder
31. august 2003 - 16:40 #4
Du har måske fat i noget jeg ikke har fanget.
Hvad er det for et form input.
Ligger formen ikke i kaldet Request.Form("")?
Skal jeg lave en fil med formen?
Hvad skal filen så hedde?
Form.asp el. Form.htm?
Avatar billede eagleeye Praktikant
31. august 2003 - 16:45 #5
Når du skriver sådan her:

Request.Form("tekstblok")

Så hendet den det tekst man har tastet ind i sit form input. Hvordan hvade du tænkt data skulle kommme i filen??
Skal det være et felt du skriver noget i, og i så fald hvordan ser det ud du har nu??
Eller skal det som vist være noget tekst som bare står i koden..

Eks på form og det lige meget hvad den side hedder:

<form action="nanvet_på_den_fil_du_skriver_til_filen.asp" method="post">
Tast her: <input type="text" name="tekstblok"><br>
<input type="submit" name="gem" value="Gem i filen">
</form>
Avatar billede willi Nybegynder
31. august 2003 - 16:57 #6
Så begynder det at ligne...
Jeg vender tilbage om lidt (sikkert)
Avatar billede eagleeye Praktikant
31. august 2003 - 16:59 #7
;) helt i orden
Avatar billede willi Nybegynder
31. august 2003 - 18:01 #8
Tjjaaa. Måske havde du ikke så meget styr på asp. Men det gik da.
Tak for hjælpen.
Men lige en sidste ting.
Hvorfor angives name="gem" og value="Gem i filen".
Hvad bruges name="gem" til?
...Og så lige et svar :)
Rigtig lækkert at være nået så langt (selvom det kun lige er begyndt)
Avatar billede eagleeye Praktikant
31. august 2003 - 18:05 #9
Ang. submit knappen:

value="Gem i filen" er den tekst som kommer frem på knappen.

name="gem"  giver submit kanppen et navn. Så kan man på samme måde som man hendter teksten i et input felt så kan du man hende det som står i value på en submit-knap.
Avatar billede willi Nybegynder
31. august 2003 - 18:12 #10
Ups. jeg glemte at accepterer.
Tak endnu engang
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