Event Manager
Nu har jeg fundet et simpelt event program, men er stadig ikke så god til at håndtere ASP. Derfor spørger jeg jer eksperter til råds. Event koderne består af 4 filer hvoraf jeg kun vil benytte 3 af dem.Jeg vil gerne have det sådan at det hele bliver vist på den samme side. Når man går ind så viser den alle events'ne og derfra kan man adde events uden at skulle logge ind. Når en event er blevet submittet bliver den vist med det samme, og når en event bliver slettet så forsvinder den med det samme.
se evt. http://www.tekken.dk/event/ for eksempel.
username: administrator
pass: admin
alle koderne vedlægger jeg her:
admin.asp
<HTML>
<BODY BGCOLOR=#ffffff>
<P>
<FONT FACE="Verdana, Arial, Helvetica" SIZE=2>
<%
'Process the submitted info if its there
If Request.Form("title") <> "" and Request.Form("date") <> "" and Request.Form("description") <> "" Then
Dim FileOut,FileObject, FilePath
'find the literal path
FilePath = Server.MapPath("/event") & "\events.txt"
set FileObject = Server.CreateObject("scripting.filesystemobject")
'open the text file
Set FileOut = FileObject.opentextfile(FilePath, 8, true )
'write the info
FileOut.writeline trim(Request.Form("Title"))
FileOut.writeline trim(Request.Form("Date"))
FileOut.writeline trim(Request.Form("Description"))
FileOut.close
Response.Write("Event Added<br>")
End If
%>
Event Administrator
</FONT>
<form action="admin.asp" method="post" name="event">
<P><FONT face="Verdana, Arial, Helvetica" size=2>Title: </FONT><FONT
face="Verdana, Arial, Helvetica" size=2><INPUT id=title name=title></FONT></P>
<P><FONT face="Verdana, Arial, Helvetica" size=2>
<br>
Date: <INPUT id=date name=date value=<%=date()%>></FONT></P>
<P><FONT face=Verdana size=2>Description: </FONT></P>
<P><FONT face="Verdana, Arial, Helvetica" size=2>
<TEXTAREA id=description name=description style="HEIGHT: 122px; WIDTH: 336px">
</TEXTAREA></FONT></P>
<P>
<INPUT id=submit1 name=submit1 type=submit value=Submit>
<INPUT id=reset1 name=reset1 type=reset value=Reset></P></FONT>
</form>
<%
Dim FileIn, EventDate, EventTitle, Description, Counter
Counter = 0
'find the path
FilePath = Server.MapPath("/event") & "\events.txt"
set FileObject = Server.CreateObject("scripting.filesystemobject")
Set FileIn = FileObject.OpenTextFile(FilePath, 1, 0, 0 )
While Not FileIn.AtEndOfStream
'read in all events, display them and add the
'delete button so you can get rid of them
EventTitle = FileIn.ReadLine
EventDate = FileIn.ReadLine
Description = FileIn.ReadLine
If EventTitle <> "" and EventDate <> "" Then
Response.Write("<form action='delete.asp' method='post' name='delete'>")
Response.Write("<input type='hidden' value='" & Counter & "' id='Entry' name='Entry'>")
Response.Write("<FONT FACE='Veranda' SIZE='2'>")
Response.Write("Date: " & EventDate & "<br>")
Response.Write("Title: " & EventTitle & "<br>")
Response.Write("Description: " & Description & "<br>")
Response.Write("</font>")
Response.Write("<input type='submit' value='Delete' id='submit' name='submit'><br>")
Response.Write("</form>")
Counter = Counter + 1
End if
Wend
%>
</BODY>
</HTML>
default.asp
<html>
<head>
<title>Current Events</title>
</head>
<body>
<table cellpadding=2 cellspacing=2 border=2>
<tr>
<td><h3>Date</h3></td>
<td><h3>Title</h3></td>
<td><h3>Description</h3></td>
<%
'read in the events and format them in a table
Dim FileIn, EventDate, EventTitle, Description, Counter
Counter = 0
'find literal path
FilePath = Server.MapPath("/event") & "\events.txt"
set FileObject = Server.CreateObject("scripting.filesystemobject")
'open text file
Set FileIn = FileObject.OpenTextFile(FilePath, 1, 0, 0 )
While Not FileIn.AtEndOfStream
EventTitle = FileIn.ReadLine
EventDate = FileIn.ReadLine
Description = FileIn.ReadLine
If EventTitle <> "" and EventDate <> "" Then
'format it up
Response.Write("<tr>")
Response.Write("<td>")
Response.Write(EventDate)
Response.Write("</td>")
Response.Write("<td>")
Response.Write(EventTitle)
Response.Write("</td>")
Response.Write("<td>")
Response.Write(Description)
Response.Write("</td>")
Response.Write("</tr>")
Counter = Counter + 1
End if
Wend
%>
<a href="login.asp">Admin Login</a>
</body>
</html>
login.asp
<%
'very simple login check
if Request.Form("username") = "administrator" and Request.Form("password") = "admin" then
Response.Redirect ("admin.asp")
end if
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<Title>Event System Login</title>
</HEAD>
<BODY>
<form action="login.asp" method="post" name="login">
<P>Username: <INPUT id=username name=username></P>
<P>Password: <INPUT id=password name=password type=password></P>
<P>
<INPUT id=submit1 name=submit1 type=submit value=Login></P>
</form>
</BODY>
</HTML>
delete.asp
<%@ Language=VBScript %>
<HTML>
<HEAD>
<Title>Event Deleted</title>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
</HEAD>
<BODY>
<%
'read all the info into dynamic arrays
'then write the file excluding the one
'the user wanted deleted
Dim FileIn, FileOut
Dim Counter, EventNumber, Max
'the dynamic arrays
Dim EventTitle()'very useful little guys
Dim EventDate()
Dim Description()
'get the # of the entry to delete
EventNumber = Request.Form("Entry")
Counter = 0
Max = 0
'get the literal file path
FilePath = Server.MapPath("/event") & "\events.txt"
set FileObject = Server.CreateObject("scripting.filesystemobject")
'open the file
Set FileIn = FileObject.OpenTextFile(FilePath, 1, 0, 0 )
While Not FileIn.AtEndOfStream
'read everything into the arrays
'resize the arrays, keeping the info
'that's already in them
ReDim Preserve EventTitle(Max)
ReDim Preserve EventDate(Max)
ReDim Preserve Description(Max)
EventTitle(Max) = FileIn.ReadLine
EventDate(Max) = FileIn.ReadLine
Description(Max) =FileIn.ReadLine
Max = Max + 1
Wend
'open the text file for writing
Set FileOut = FileObject.CreateTextFile(FilePath,true)
For Counter = 0 to Max-1
'write every entry BUT the one to be deleted
If Counter = abs(EventNumber) Then
'print the one that's to be deleted
'to the screen
Response.Write "Title: " & EventTitle(Counter) & "<br>"
Response.Write "Date: " & EventDate(Counter)& "<br>"
Response.Write "Description: <br>" & Description(Counter)& "<br>"
Response.Write "<h3>Event Deleted</h3>" & "<br>"
Else
FileOut.WriteLine EventTitle(Counter)
FileOut.WriteLine EventDate(Counter)
FileOut.WriteLine Description(Counter)
End If
'Counter = Counter + 1
Next
%>
</BODY>
</HTML>
Der er meget at gå igennem, derfor er der 120 point til den der løser mit problem.
