Avatar billede tolveren Nybegynder
31. august 2006 - 22:27 Der er 28 kommentarer

Skriv til Txt fil

Hvordan får jeg lagt de udsøgte oplysninger ned i min txt fil:
Variablen "resp" indeholder domain-oplysningerne, men er ikke en servervariabel. Hvordan får jeg oplysningerne ned i en txt fil.

Min kode:
<form method="post">
<b>Domænetester:</b> <input type="text" name="DomainToTest" size="20">
<input type="submit" name="SubmitButton" value="Test">
</form>

<%
function doWhois(Domain, Scope)
    Domain = LCase(Domain)

    Response.Write "[" & Domain & "]<br"

    Host = "whois.dk-hostmaster.dk"
    SearchStr = "No entries found for the selected source."

    set Socket = Server.CreateObject("Socket.TCP")
    Socket.Host = Host & ":43"
    Socket.Open
    'Socket.SendLine(Domain)
    Socket.SendLine(" --show-handles " & Domain)
    Socket.WaitForDisconnect
    Result = Socket.Buffer
    Socket.Close

    if Scope = "short" then
        doWhois = InStr(Result, SearchStr)
    else
        doWhois = Result
    end if

    set Socket = Nothing
end function

If Request.Form("SubmitButton") = "Test" Then
    DomainToTest = Request.Form("DomainToTest")

    Resp = doWhois(DomainToTest, "full")
    If Resp <> "" Then
        Response.Write "DomainToTest"
        'Response.Write Resp
        'Response.Write "</pre>"
       

    End If
End If
%>
Resultat for whois: <b><%=Test%></b><br>
<pre><%=resp%>
</pre>

<%
    'fanger oplysninger og gemmer dem i filen IP_log.txt
    dim filesys, filetxt
    Const ForWriting = 2, ForAppending = 8
    Set filesys = CreateObject("Scripting.FileSystemObject")
    Set filetxt = filesys.OpenTextFile(Server.MapPath("/IP_log.txt"), ForAppending, True)
    filetxt.WriteLine("<p>")
    filetxt.WriteLine("IP=" & Request.ServerVariables("REMOTE_ADDR"))
    filetxt.WriteLine("Dato for Login: " & Date() & " kl " & Time() &".")
    filetxt.WriteLine("HTTP_USER_AGENT=" & Request.ServerVariables("HTTP_USER_AGENT"))
    filetxt.WriteLine("HTTP_REFERER=" & Request.ServerVariables("HTTP_REFERER"))
    filetxt.WriteLine("domainoplysninger:" & Request.ServerVariables("resp"))
    filetxt.WriteLine("</p>")
    filetxt.Close
    Set filetxt = Nothing
    Set filesys = Nothing
%>
-------------------------------
Avatar billede madeindk Nybegynder
31. august 2006 - 22:44 #1
Mon ikke man kan gøre sådan her.

<%
Set FSO = Server.CreateObject("Scripting.FileSystemObject")

' Opret txt fil, måske ikke nødvendig
FSO.CreateTextFile("c:\mappe\nyfil.txt")

' Finder filen
Set File = FSO.OpenTextFile("c:\mappe\fil.txt", 2)
File.WriteLine(resp)

' Læser alle linier i koden - for at teste
Set File = FSO.OpenTextFile("c:\mappe\fil.txt", 1)
Response.Write File.ReadAll

Set FSO = Nothing
%>

Håber du kan bruge det - jeg har fundet det på http://www.opfinderen.dk/sites/70/ - virkelig god side med massere gode ASP scripts - på dansk :-)
Avatar billede madeindk Nybegynder
31. august 2006 - 22:46 #2
Rettelse:

<%
Set FSO = Server.CreateObject("Scripting.FileSystemObject")

' Opret txt fil, måske ikke nødvendig
FSO.CreateTextFile("c:\mappe\fil.txt")

' Finder filen og skriver alle linier
Set File = FSO.OpenTextFile("c:\mappe\fil.txt", 2)
File.WriteLine(resp)

' Læser alle linier i .txt filen - for at teste
Set File = FSO.OpenTextFile("c:\mappe\fil.txt", 1)
Response.Write File.ReadAll

Set FSO = Nothing
%>
Avatar billede thesurfer Nybegynder
31. august 2006 - 22:48 #3
Jeg ville nu nok hellere bruge ".Write" i stedet for ".WriteLine"..
Avatar billede tolveren Nybegynder
31. august 2006 - 22:48 #4
Ok, jeg tester lige.
Avatar billede tolveren Nybegynder
31. august 2006 - 22:55 #5
Det virkede tilsyneladende ikke. Jeg har ændret stien til C:\fil.txt
Filen blev ikke oprettet på mit C drev.
Avatar billede madeindk Nybegynder
31. august 2006 - 22:55 #6
Modtog du ikke nogen fejl?
Avatar billede thesurfer Nybegynder
31. august 2006 - 23:02 #7
Husk på at ASP kun kan skrive til serverens dreve..
Dvs, hvis du uploader scriptet til en server (f.eks. www.domæne.dk ), vil den gemme filen online, og ikke på din egen computer.

Den vil kun gemme på din egen computer, hvis du selv hoster ASP (f.eks. via IIS)..
Avatar billede tolveren Nybegynder
31. august 2006 - 23:02 #8
Nej ingen fejl
Avatar billede thesurfer Nybegynder
31. august 2006 - 23:03 #9
PS:
1) Det er ikke sikkert at du kan få lov til at gemme filen, hvis du uploader scriptet.

2) Din host/udbyder bliver nok ikke glad, hvis du begynder at gemme/save filer i roden af deres drev (hvis overhovedet muligt).. :-)
Avatar billede tolveren Nybegynder
31. august 2006 - 23:15 #10
Det der fine opfinderlink ser godt ud. Men er det korrekt at der ikke kan gemmes på C drev. Hvordan vil du thesurfer henvise til domænedrevet ?
Avatar billede thesurfer Nybegynder
31. august 2006 - 23:18 #11
I stedet for ("c:\mappe\fil.txt", 2) bruger man (server.mappath("/"), 2)

Mener jeg.. :-)
Avatar billede thesurfer Nybegynder
31. august 2006 - 23:21 #12
Når din side er http://www.tolveren.dk er det på serveren noget i stil med:

c:\inetpub\wwwroot\websites\tolveren.dk

Du har kun adgang til mappen "c:\inetpub\wwwroot\websites\tolveren.dk", og ikke til nogen af de andre niveauer:

c:\
c:\inetpub
c:\inetpub\wwwroot
c:\inetpub\wwwroot\websites

Så kan du godt se, at du ikke kan bruge "c:\".. :-)
Avatar billede thesurfer Nybegynder
31. august 2006 - 23:23 #13
PS:
server.mappath("/") betyder: dan stien til domæne-roden der tilhører mig

server.mappath(".") betyder: dan stien til den mappe dette script er i
Avatar billede tolveren Nybegynder
31. august 2006 - 23:34 #14
Jeg har indsat denne kode, den virker bare ikke.
Avatar billede tolveren Nybegynder
31. august 2006 - 23:34 #15
<%
Set FSO = Server.CreateObject("Scripting.FileSystemObject")

' Opret txt fil, måske ikke nødvendig
FSO.CreateTextFile("d:\tolveren.dk\fil.txt")

' Finder filen og skriver alle linier
Set File = FSO.OpenTextFile("d:\tolveren.dk\fil.txt"), 2)
File.WriteLine(resp)

' Læser alle linier i .txt filen - for at teste
Set File = FSO.OpenTextFile("d:\tolveren.dk\fil.txt"), 1)
Response.Write File.ReadAll

Set FSO = Nothing
%>
Avatar billede thesurfer Nybegynder
31. august 2006 - 23:37 #16
Hmm.. Enten har du ikke set mine 3 sidst indlæg, eller også har du ikke forstået det..

Du må ikke bruge "c:\", "d:\", "e:\" eller andre bogstaver.

Brug: server.mappath("/")

Så vil filen ligge her: http://www.domæne.dk/fil.txt


Hvis du bruger "bogstav:\", ender filen på din hosts server (hvilket de ikke bliver glade for, hvis det lykkes dig at oprette filen), og ikke inde på dit område.
Avatar billede tolveren Nybegynder
31. august 2006 - 23:44 #17
Burde denne kode ikke virke ?

<%
Set FSO = Server.CreateObject("Scripting.FileSystemObject")
FSO.CreateTextFile server.mappath("/fil.txt")
%>

Kun ovst kode er indsat i en asp side.
Avatar billede tolveren Nybegynder
31. august 2006 - 23:44 #18
Den virker dog ikke.
Avatar billede tolveren Nybegynder
31. august 2006 - 23:45 #19
Kræver FSO objektet særlige installationer ?
Avatar billede thesurfer Nybegynder
31. august 2006 - 23:46 #20
Du har jo allerede oplysningerne gemt:

  Set filetxt = filesys.OpenTextFile(Server.MapPath("/IP_log.txt"), ForAppending, True)

Se lige om du har en fil på serveren, der hedder "IP_log.txt"..
Avatar billede thesurfer Nybegynder
31. august 2006 - 23:49 #21
Ja, FSO kræver særlig tilladelse.
Avatar billede thesurfer Nybegynder
31. august 2006 - 23:53 #22
Opret en .asp fil, smid denne kode i filen, upload den, og fortæl mig hvad der står under "Detecting FileSystem Components...":

<%
'//////////////////////////////////////////////////////////////////////
' © yurtseven.com. All rights reserved.                               
' The entire contents of this document is copyrighted and may not     
' be reproduced for any purpose without prior written permission.     
' For questions or comments, please contact: cenk@yurtseven.com       
'//////////////////////////////////////////////////////////////////////
'////////////////////////////////////////////////////////////////////////////
' Please upload this file into any directory on your webserver and browse it.
' Inform your Site Administrator about the installed                       
' components on your server.                                               
'////////////////////////////////////////////////////////////////////////////
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1254">
<TITLE>Detecting System Components</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT="#000000" TOPMARGIN="0" LEFTMARGIN="0" MARGINHEIGHT="0" MARGINWIDTH="0"><TABLE BORDER="0" WIDTH="100%" CELLSPACING="0" CELLPADDING="0"><TR><TD WIDTH="25%" BGCOLOR="#465697">&nbsp;</TD>
<TD WIDTH="100%" BGCOLOR="#465697"><FONT FACE="Verdana" SIZE="2" COLOR="#FFFFFF"><B>Detecting Email Components...</B>
</FONT>
</TD>
<TD WIDTH="25%" BGCOLOR="#465697">&nbsp;</TD>
</TR>
<TR><TD COLSPAN="3" WIDTH="100%">&nbsp;</TD>
</TR>
<TR><TD WIDTH="25%">&nbsp;</TD>
<TD WIDTH="50%"><FONT FACE="Verdana" SIZE="2"><%
Dim sql_control
Dim sql_con_trol
sql_con_trol = 0
On Error Resume Next
Set sql_control = CreateObject("VSEmail.SMTPSendMail")
If Err then
Else
    Response.Write "Detected:&nbsp;&nbsp;&nbsp; <B><FONT COLOR=""#009900"">VSEmail</FONT></B><BR>" & vbcrlf
    sql_con_trol = sql_con_trol + 1
End if
Err.Clear
Set sql_control = CreateObject("Persits.MailSender")
If Err then
Else
    Response.Write "Detected:&nbsp;&nbsp;&nbsp; <B><FONT COLOR=""#009900"">ASPEmail</FONT></B><BR>" & vbcrlf
    sql_con_trol = sql_con_trol + 1
End if
Err.Clear
Set sql_control = server.CreateObject("CDONTS.NewMail")
If Err then
Else
    Response.Write "Detected:&nbsp;&nbsp;&nbsp; <B><FONT COLOR=""#009900"">CDONTS</FONT></B><BR>" & vbcrlf
    sql_con_trol = sql_con_trol + 1
End if
Err.Clear
Set sql_control = Server.CreateObject("SMTPsvg.Mailer")
If Err then
Else
    Response.Write "Detected:&nbsp;&nbsp;&nbsp; <B><FONT COLOR=""#009900"">ASPMail</FONT></B><BR>" & vbcrlf
    sql_con_trol = sql_con_trol + 1
End if
Err.Clear
Set sql_control = Server.CreateObject("JMail.SMTPMail")
If Err then
Else
    Response.Write "Detected:&nbsp;&nbsp;&nbsp; <B><FONT COLOR=""#009900"">JMail 3.7</FONT></B><BR>" & vbcrlf
    sql_con_trol = sql_con_trol + 1
End if
Err.Clear
Set sql_control = Server.CreateObject("JMail.Message")
If Err then
Else
    Response.Write "Detected:&nbsp;&nbsp;&nbsp; <B><FONT COLOR=""#009900"">JMail 4.1</FONT></B><BR>" & vbcrlf
    sql_con_trol = sql_con_trol + 1
End if
Err.Clear
Set sql_control = Server.CreateObject("Dynu.Email")
If Err then
Else
    Response.Write "Detected:&nbsp;&nbsp;&nbsp; <B><FONT COLOR=""#009900"">Dynu Mail</FONT></B><BR>" & vbcrlf
    sql_con_trol = sql_con_trol + 1
End if
Err.Clear
Set sql_control = Server.CreateObject("ADISCON.SimpleMail.1")
If Err then
Else
    Response.Write "Detected:&nbsp;&nbsp;&nbsp; <B><FONT COLOR=""#009900"">Simple Mail</FONT></B><BR>" & vbcrlf
    sql_con_trol = sql_con_trol + 1
End if
Err.Clear
set sql_control = Server.CreateObject("ASPMail.ASPMailCtrl.1")
If Err then
Else
    Response.Write "Detected:&nbsp;&nbsp;&nbsp; <B><FONT COLOR=""#009900"">OCXMail</FONT></B><BR>" & vbcrlf
    sql_con_trol = sql_con_trol + 1
End if
Err.Clear
If sql_con_trol > 0 then
    Response.Write "<BR><BR>Found <B>" & sql_con_trol & "</B> components." & vbcrlf
    Response.Write "<BR>" & vbcrlf
    Response.Write "<BR><B><A HREF=""mailto:cenk@yurtseven.com"">cenk@yurtseven.com</A></B>" & vbcrlf
Else
    Response.Write "<BR>" & vbcrlf
    Response.Write "<BR>Your sever has not installed any of the email components spidered by this program." & vbcrlf
    Response.Write "<BR>" & vbcrlf
    Response.Write "<BR>Please contact your web server administrator to be informed" & vbcrlf
    Response.Write "<BR>about the installed <B>email components</B> on your server." & vbcrlf
End if
%></FONT>
</TD>
<TD WIDTH="25%">&nbsp;</TD>
</TR>
</TABLE>
<BR>
<BR>
<TABLE BORDER="0" WIDTH="100%" CELLSPACING="0" CELLPADDING="0"><TR><TD WIDTH="25%" BGCOLOR="#465697">&nbsp;</TD>
<TD WIDTH="100%" BGCOLOR="#465697"><FONT FACE="Verdana" SIZE="2" COLOR="#FFFFFF"><B>Detecting FileSystem Components...</B>
</FONT>
</TD>
<TD WIDTH="25%" BGCOLOR="#465697">&nbsp;</TD>
</TR>
<TR><TD COLSPAN="3" WIDTH="100%">&nbsp;</TD>
</TR>
<TR><TD WIDTH="25%">&nbsp;</TD>
<TD WIDTH="50%"><FONT FACE="Verdana" SIZE="2"><%
On Error Resume Next
OutHTML = ""
Set FSO = CreateObject("Scripting.FileSystemObject")
Set act = FSO.CreateTextFile(Server.MapPath("testfile.txt"), True)
act.WriteLine("TestLine")
act.Close
Set act = Nothing
If Err = 0 Then
    OutHTML = OutHTML & "<BR>Creating of files supported..." & vbcrlf
Else
    OutHTML = OutHTML & "<BR>Creating of files <B>not</B> supported..." & vbcrlf
End If
fso.DeleteFile(Server.MapPath("testfile.txt"))
If Err = 0 Then
    OutHTML = OutHTML & "<BR>Deleting and Modifying of files supported..." & vbcrlf
Else
    OutHTML = OutHTML & "<BR>Deleting and Modifying of files <B>not</B> supported..." & vbcrlf
End If
Set FSO = Nothing
If Err > 0 then
    Response.Write "<B>Scripting.FileSystemObject not full supported.</B>" & vbcrlf
Else
    Response.Write "Detected:&nbsp;&nbsp;&nbsp; <B><FONT COLOR=""#009900"">Scripting.FileSystemObject</FONT></B><BR><BR>" & vbcrlf
    c1 = c1 + 1
End if
Err.Clear
Response.Write OutHTML
If c1 > 0 then
    Response.Write "<BR>Found <B>" & c1 & "</B> components." & vbcrlf
    Response.Write "<BR>" & vbcrlf
    Response.Write "<BR><B><A HREF=""mailto:cenk@yurtseven.com"">cenk@yurtseven.com</A></B>" & vbcrlf
Else
    Response.Write "<BR>" & vbcrlf
    Response.Write "<BR>Please contact your web server administrator to be informed" & vbcrlf
    Response.Write "<BR>about the installed <B>FileSystemObjects</B> on your server." & vbcrlf
End if
%></FONT>
</TD>
<TD WIDTH="25%">&nbsp;</TD>
</TR>
</TABLE>
</BODY>
</HTML>
Avatar billede tolveren Nybegynder
31. august 2006 - 23:58 #23
Fik fejltekst
Avatar billede thesurfer Nybegynder
01. september 2006 - 00:03 #24
Det kan jeg ikke bruge til noget.. smid teksten herind.
Avatar billede tolveren Nybegynder
01. september 2006 - 00:07 #25
Siden kan ikke vises
Der er problemer med den side, du prøver at åbne, og den kan ikke vises.

--------------------------------------------------------------------------------

Prøv følgende:

Åbn www.datasamler.dk hjemmesiden og søg efter links til de oplysninger, du vil have.
Klik på knappen  Opdater, eller prøv igen senere.

Klik på  Søg for at søge efter oplysninger på Internettet.
Du kan også se en liste over relaterede websteder.




HTTP 500 - Intern serverfejl
Internet Explorer
Avatar billede thesurfer Nybegynder
01. september 2006 - 00:15 #26
Hmm.. underligt..

Det er ikke sådan en fejl, der skal opstå, hvis du ikke har adgang til FSO..

Er du sikker på at du har loadet url'en rigtigt? Altså, til filen med koden fra 31/08-2006 23:53:20
Avatar billede tolveren Nybegynder
01. september 2006 - 00:19 #27
Den er kopieret til notepad og derfra til en asp side som er uploadet til webhotellet på mit domæne.
Avatar billede tolveren Nybegynder
01. september 2006 - 00:22 #28
Tak for de gode ideer indtil nu. jeg håber I har flere. Er dog nødt til at gå i seng. Konen kalder.
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