Avatar billede Slettet bruger
05. maj 2002 - 00:56 Der er 24 kommentarer og
1 løsning

ASP fejl, nogen der lige gider hjælpe?

Hey ppl!
jeg sidder her en dejlig nat, og laver (prøver) et script..
Men jeg for jo som sædvanelig en fejl, eller faktisk to...

SCRIPT:

<body>
<%
  ' Variabler
  Dim sFileName, oFileSys, oFile, filespec, f, fso
 
  ' Til saving i all.txt
  Set fso = CreateObject("Scripting.FileSystemObject")
  filespec = Server.Mappath("all.txt")
  Set f = fso.OpenTextFile(filespec,8)
 
 
  ' Laver en Querystring
  if Request.querystring("SAVE") = "true" then
 
  ' Laver filen
 
  Set oFileSys = Server.CreateObject("Scripting.FileSystemObject")
  sFileName = Server.MapPath( "files/" & Request.form("name") & "." & "txt")
  Set oFile = oFileSys.CreateTextFile(sFileName, True)
 
  ' Skriver i filen
  oFile.WriteLine("<table><tr><td>" & Request.form("index") & "</td></tr></table><br />")
 
  ' Skriver i all.txt - til oversigt
  f.writeline = "<li>" & Request.form("name") & "</li>"
 
 
  ' Lukker alle filerne
  MyFile.close
  f.close
  oFile.Close
  Set f = Nothing
  Set oFile = Nothing
  Set oFileSys = Nothing
 
  ' Giver en klar besked
  Response.write = "Filen er gemt"
 
  ' Formen
  else %>
<form action="default.asp?SAVE=true" method="post">
Tekst Navn2: <input name="name" type="text">
<br />Indhold af tekstfil: <textarea name="index"></textarea>
<br />
<br />
<br /><input type="Submit">
</form>
<%
  ' Slutter Querystringen
end if %>

</body>


FEJLEN:
Når man submitter, skal den gemme : "<li> NAME </li>" i all.txt, men det gør den ikke...?

Også er der også en fejl :
Microsoft VBScript runtime error '800a01b6'

Object doesn't support this property or method: 'WriteLine'

/debat/default.asp, line 32


Hvad er problemet?
Avatar billede erikjacobsen Ekspert
05. maj 2002 - 01:10 #1
f.writeline = "<li>" & Request.form("name") & "</li>"

skal måske være

Ofile.writeline = "<li>" & Request.form("name") & "</li>"
Avatar billede erikjacobsen Ekspert
05. maj 2002 - 01:11 #2
Vrøvl. Hvad laver de lighedstegn:

  Ofile.writeline "<li>" & Request.form("name") & "</li>"
Avatar billede eagleeye Praktikant
05. maj 2002 - 01:11 #3
f.writeline = "<li>" & Request.form("name") & "</li>"

Skal være :

f.writeline ("<li>" & Request.form("name") & "</li>")
Avatar billede erikjacobsen Ekspert
05. maj 2002 - 01:12 #4
Ret

  Response.write = "Filen er gemt"

til

  Response.write "Filen er gemt"
Avatar billede erikjacobsen Ekspert
05. maj 2002 - 01:13 #5
Hvorfor sætter du paranteser om, eagleeye. Det skal der da ikke.
(Ja, der *må* hvis der er én parameter til en sub, men det giver
fejl hvis der er 2)
Avatar billede Slettet bruger
05. maj 2002 - 01:18 #6
tak :)
Avatar billede rou Nybegynder
05. maj 2002 - 01:20 #7
Fordi det er god skik, Erik. Paranteser gør det nemmere at læse at der er tale om en funktion (metode), så ja jeg mener også man bør benytte Call foran funktioner med mere end een parameter, hvor den ellers ikke tillader paranteser.

Asp er igrunden et meget grimt sprog.
Avatar billede erikjacobsen Ekspert
05. maj 2002 - 01:22 #8
helt enig. Men at sætte paranteser på lige den måde, er udmådeligt
forvirrende,
Avatar billede erikjacobsen Ekspert
05. maj 2002 - 01:22 #9
...og så laver det call-by-reference om til call-by.value (ligeyldigt
her)
Avatar billede Slettet bruger
05. maj 2002 - 01:24 #10
Hey bliv lige i to sek, har et til problem!
Avatar billede rou Nybegynder
05. maj 2002 - 01:25 #11
det var kun i asp2, så vidt jeg ved. nu er byval default, og du kan angive byref.
Avatar billede Slettet bruger
05. maj 2002 - 01:25 #12
Koden:
<%
Dim fso, f, filespec
Set fso = CreateObject("Scripting.FileSystemObject")
filespec = Server.Mappath("all.txt")
Set f = fso.OpenTextFile(filespec,1)

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

f.Close
%>


all.txt:
jegtester
test
fsdf
fsadfsad
fsd
fsdf

Fejlen:
Outputet er:
- test
- fsadfsad
- fsdf

Hvorfor skriver den kun 3?
Avatar billede erikjacobsen Ekspert
05. maj 2002 - 01:26 #13
Prøv "vis kilde" - hver anden linie er jo blevet til et link
Avatar billede erikjacobsen Ekspert
05. maj 2002 - 01:28 #14
Do While not f.AtEndOfStream
  nattenervoregen = f.readline
  Response.write "- <a href='" & nattenervoregen & "'>" & nattenervoregen & "</a><br>"
Loop


??
Avatar billede rou Nybegynder
05. maj 2002 - 01:28 #15
fordi du bruger .readline 2 gange i koden.
Avatar billede eagleeye Praktikant
05. maj 2002 - 01:28 #16
Ja fordi du læser En linie med ReadLine og flytter fil pointeren en linie frem. Næste gang i samme linie læser du en ny linie i filen, gøt sådan her:

tmpStr = f.readline  'Læs en linie fra filen
Response.write "- <a href='" & tmpStr  & "'>" & tmpStr & "</a><br>"
Avatar billede Slettet bruger
05. maj 2002 - 01:29 #17
koden i vis kilde er:

- <a href='jegtester'>test</a><br>- <a href='fsdf'>fsadfsad</a><br>- <a href='fsd'>fsdf</a><br>
Avatar billede eagleeye Praktikant
05. maj 2002 - 01:29 #18
3 på stribe :)
Avatar billede Slettet bruger
05. maj 2002 - 01:30 #19
snøft, nu for jeg:

Microsoft VBScript runtime error '800a01a8'

Object required: ''

/debat/default.asp, line 11
Avatar billede Slettet bruger
05. maj 2002 - 01:32 #20
eller sorry, Filen indenholder nu

<%
Dim fso, f, filespec, line, tmpStr
tmpStr = f.readline  'Læs en linie fra filen
Set fso = CreateObject("Scripting.FileSystemObject")
filespec = Server.Mappath("all.txt")
Set f = fso.OpenTextFile(filespec,1)

' Læs linie for linie indtil slutningen af filen
Do While not f.AtEndOfStream
    Response.write "- <a href='" & tmpStr  & "'>" & tmpStr & "</a><br>"
Loop


f.Close
%>
Avatar billede Slettet bruger
05. maj 2002 - 01:33 #21
grr jeg er dum idag..

Linje 11 er: tmpStr = f.readline  'Læs en linie fra filen
Avatar billede eagleeye Praktikant
05. maj 2002 - 01:34 #22
Du skal også huske at læse en linie ...

Do While not f.AtEndOfStream
    tmpStr = f.ReadLine
    Response.write "- <a href='" & tmpStr  & "'>" & tmpStr & "</a><br>"
Loop
Avatar billede Slettet bruger
05. maj 2002 - 01:34 #23
det gør jeg da os?
Avatar billede Slettet bruger
05. maj 2002 - 01:35 #24
Hov sorry, jeg har fået det til at virke :)
Avatar billede Slettet bruger
05. maj 2002 - 01:45 #25
er i der stadig?

hehe
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