webForumDet fria alternativet

Adminsida för enkla HTML-dokument

ASP

0 svar · 906 visningar · startad av Janspeed

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

Denna har jag skapat för att administrera enkla HTML-sidor med all kod i ett enda dokument. Håll till godo. Om det är nått du undrar så får du fråga mig på jens_unknown@hotmail.com.

Koden refreshar lite dåligt och därför har jag använt en väldigt enkel <meta> - refresh när sidan laddas som du kanske märker när du tittar på koden. Om du kommer på något bättre sätt att lösa detta så får du gärna berätta det för mig.

Koden är dessutom inte finputsad så det kanske finns en hel del onödiga kommandon men den är fullt funktions duglig.

Ta väl hand om min kod för jag har jobbat hårt med den. ;)

<font size="1" face="Verdana, Arial, Helvetica, sans-serif">Kod:<font size="1" face="Verdana, Arial, Helvetica, sans-serif" color="#006666">

<html>
<head>
<title>Admin</title>
</head>
<body>
<%

'Kod skapad av Jens Nilsson Sweden 2000

Response.Write "<b>Välkommen till Jens fenomenala adminsystem för HTML dokument</b><br><br>"

Dim dokVar, rubVar, textVar, actionVar, folder, Rubrik, Text

dokVar = Request("dokument")
rubVar = Request("rubrik")
textVar = Request("text")
actionVar = Request("action")

'Get path to folder wich contains the files
folder = Server.MapPath("/admin_publish/dokument/")
Rubrik = ""
Text = ""

'Choose wich action you want to do
Select Case actionVar

'For Saving document
Case "Spara"

Dim Create, Write, savePath, file, count
Set Create = Server.CreateObject("Scripting.FileSystemObject")

'Replace all the vbcrlf with html breaks
textVar = Replace(textVar, vbcrlf, "<br>")

'Check if the document's first letters is "dok"
If Left(dokVar, 3) = "dok" Then

savePath = Create.BuildPath(folder, dokVar)
Set Write = Create.OpenTextFile(savePath, 2)
Write.WriteLine "<!--" & rubVar & "-->"
Write.WriteLine "<html>" & vbcrlf & "<head>" & vbcrlf & "<title>Atomatiskt dokument</title>" & vbcrlf & "</head>" & vbcrlf & "<body>" & vbcrlf & "<br>"
Write.WriteLine "<p><b><i>" & vbcrlf & rubVar & vbcrlf & "</i></b></p>" & vbcrlf
Write.WriteLine "<p>" & vbcrlf & textVar & vbcrlf & "</p>" & vbcrlf
Write.WriteLine "</body>" & vbcrlf & "</html>"
Write.Close

Response.Write "Filen har sparats som " & dokVar & "<br>" & vbcrlf

Else

count = 1
file = "dok0" & count & ".asp"
savePath = Create.BuildPath(folder, file)

Do Until Create.FileExists(savePath) = False
count = count + 1
file = "dok0" & count & ".asp"
savePath = Create.BuildPath(folder, file)
Loop

If Create.FileExists(savePath) = False Then

Set Write = Create.CreateTextFile(savePath, 2)
Write.WriteLine "<!--" & rubVar & "-->"
Write.WriteLine "<html>" & vbcrlf & "<head>" & vbcrlf & "<title>Automatiskt dokument</title>" & vbcrlf & "</head>" & vbcrlf & "<body>" & vbcrlf & "<br>"
Write.WriteLine "<p><b><i>" & vbcrlf & rubVar & vbcrlf & "</i></b></p>" & vbcrlf
Write.WriteLine "<p>" & vbcrlf & textVar & vbcrlf & "</p>" & vbcrlf
Write.WriteLine "</body>" & vbcrlf & "</html>"
Write.Close

Response.Write "Filen har skapats och sparats som dok0" & count & ".asp<br>" & vbcrlf
Else

Response.Write "Filen skapades inte<br>" & vbcrlf

End If

End If

'For removing documents
Case "Ta bort"

If dokVar = "0" Then
Response.Write "Felaktig fil!<br>Du måste välja vilken fil du vill ta bort först<br>" & vbcrlf
Else

Dim Delete, deletePath
Set Delete = Server.CreateObject("Scripting.FileSystemObject")
deletePath = Delete.BuildPath(folder, dokVar)

Delete.DeleteFile deletePath
Response.Write "Filen " & dokVar & " har tagits bort<br>" & vbcrlf

End If

'For editing documents
Case "Editera"

If dokVar = "0" Then
Response.Write "<tr><td>Du måste vaälja vilken fil du vill editera först</td></tr>" & vbcrlf
Else

Dim Edit, editPath, Open, Parse

Set Edit = Server.CreateObject("Scripting.FileSystemObject")
editPath = Edit.BuildPath(folder, dokVar)
Set Open = Edit.OpenTextFile(editPath)

'Skips lines until it reaches line 9
Do Until Open.Line = 9
Open.SkipLine
Loop

'Opens line 9 which contains the headline
Rubrik = Open.ReadLine

'Skips lines until it reaches line 13
Do Until Open.Line = 13
Open.SkipLine
Loop

'Opens line 13 which contains the textcontent
Text = Open.ReadLine

Open.Close

Text = Replace(Text, "<br>", vbcrlf)

Response.Write "Editera<br>" & vbcrlf

End If

'For aborting an action
Case "Avbryt"

Response.Write "Avbruten<br>" & vbcrlf

'Deafault upon loading for the first time
Case Default

If Not request.querystring("content")="reloaded" then
Response.Write "Vänta till sidan laddats om.<br>" & vbcrlf
Response.Write "<meta http-equiv=""Refresh"" content=""0;URL=admin.asp?content=reloaded"">" & vbcrlf
End If
Response.Write "Klar<br>" & vbcrlf

End Select

'Admin dokument buildup
Response.Write "<tr><td colspan=2><form name=dokument action=""admin.asp"" method=""post"">" & vbcrlf

Response.Write "Behandla<br>" & vbcrlf & "<select name=""dokument"" size=1>" & vbcrlf
Response.Write "<option value=""0"" selected>Ny ledig tjänst" & vbcrlf

If actionVar = "Editera" AND Not dokVar = "0" Then

Response.Write "<option value=""" & dokVar & """ selected>" & dokVar & vbcrlf

Else

ScanDir

End If

Response.Write "</select><br><br></td></tr>"
Response.Write "<tr><td>Rubrik<br><input type=""text"" name=""rubrik"" size=""41"" value=""" & Rubrik & """><br><br>"
Response.Write "Innehåll<br><textarea cols=40 rows=15 name=""text"">" & Text & "</textarea><br><br>"
Response.Write "<input type=submit name=""action"" value=""Spara""> <input type=""submit"" name=""action"" value=""Editera""> <input type=""Reset"" value=""Töm""> <input type=submit name=""action"" value=""Ta bort""> <input type=submit name=""action"" value=""Avbryt"">"
Response.Write "</form></td></tr>"

'Function for scanning the directory for automatic dokuments
Function ScanDir

'Declare our variables
Dim objFSO, readFSO, objFolder, fileObject, T, Output

Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
Set readFSO = Server.CreateObject("Scripting.FileSystemObject")

'set our folder object to the web root folder
Set objFolder = objFSO.GetFolder(folder)

For Each fileObject in objFolder.Files
If readFSO.FileExists(fileObject) = True Then

Set T = readFSO.OpenTextFile(fileObject)

'Skips lines until it reaches line 9
Do Until T.Line = 9
T.SkipLine
Loop

'Opens line 9 which contains the textcontent
Output = T.ReadLine

Response.Write "<option value=" & fileObject.Name & ">" & Output & vbcrlf
T.Close

End If

Next

End Function

%>

</body>
</html>

[Redigerat av Janspeed den 15 jan 2001]

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