webForumDet fria alternativet

Gästbok

ASPur ASP

13 svar · 652 visningar · startad av dr. Snaggle

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

Hej!

Jag har laddat hem en gästbok från http://www.boogiedesign.com och kan inte få den att fungera...
Någon som kan förklara hur man gör?

Filer:
- adminboogiebook.inc
- boogiebook.inc
- boogiebook.js
- demoadmin.asp
- demoguestbook.asp
- email.gif
- guestbook.mdb
- readme.txt (denna fil)
- spacer.gif
- url.gif

Problemet är att jag inte kan se sidan!
Om ni behöver veta mer, säg till!

//stefan

Medlem sedan mars 20021 889 inlägg
#2

Läs readme.txt och gå till filen:
demoguestbook.asp

Om du gör det kommer du garanterat se någonting, under förutsättning att servern stöder ASP.

:)

Medlem sedan jan. 200358 inlägg
#3

jag har läst redme filen, men förtår tyvärr inte mer för det. Jag har lagt db-filen i db-mappen på mitt webbhotel och resten av filerna i www-mappen. Och när jag länkar till demoguestbook.asp så händer det inget när jag klickar på länken, "Sidan kan inte visas står det.

någon som kan hjälpa mig?

Medlem sedan juni 200032 969 inlägg
#4

Börja med att stänga av egna http-felmeddelanden / friendly error messages i internet explorer.

Medlem sedan jan. 200358 inlägg
#5

ok!

Detta felmedelandetfår jag:

Microsoft VBScript compilation error '800a03f2'

Expected identifier

/boogiebook.inc, line 38

"DBQ="..\db\guestbook.mdb"
-------^

Medlem sedan mars 2003970 inlägg
#6

Bara undrar, hur många funktioner har inte denna gästboken då?
Du kanske kan ta en titt på idg.se, där har dom en gästbok under sina lektioner, inte så avancerad, men den funkar.

Medlem sedan juni 200032 969 inlägg
#7

Visa den kod som felar, så har vi större chans att hjälpa dig att lösa problemet.

mvh

Medlem sedan jan. 200358 inlägg
#8
<%

dim dbConn
dim strSql
dim strTableWidth
dim intPage
dim intPages
dim intPosts
dim intStart
dim intStop
dim i
dim strPageName
dim arrPageName

strPageName = Request.ServerVariables("PATH_TRANSLATED")
arrPageName = split(strPageName, "\")
strPageName = arrPageName(ubound(arrPageName))

'Swedish date format
Session.LCID = 1052

'The width of the guestbook
strTableWidth = ""

'Database connection
function connOpen()
	dim strConnString
	
	'Connection string
	strConnString = "DRIVER={Microsoft Access Driver (*.mdb)}; " & _
									"DBQ="..\db\guestbook.mdb"
	
	set dbConn = Server.CreateObject("ADODB.Connection")
	dbConn.Open(strConnString)
end function

function connClose()
	dbConn.Close
	set dbConn = nothing
end function

function paging()
	'Paging
	if intPages > 1 then
		Response.Write "<tr>"
		Response.Write "<td colspan=""2""><b>Sida:</b><br>"
		
		for i = 1 to intPages
			if not i = cint(intPage) then
				Response.Write "<a href=""?page=" & i & """> <b>" & i & "</b> </a>"
			else
				Response.Write "<span class=""head""> <b>[" & i & "]</b> </span>"
			end if
		next
	
		Response.Write "</td>"
		Response.Write "</tr>"
	end if
end function

function showGuestbook(intMax)
	dim rsGuestbook
	
	'Opens the database connection
	connOpen()
	
	'Creates the guestbook resultset
	strSql = "select BBId, BBDate, BBAuthor, BBEmail, BBUrl, BBMsg, BBIp from Guestbook order by BBDate desc"
	set rsGuestbook = dbConn.Execute(strSql)
	
	'Checks number of pages
	intPosts = 0
	if not rsGuestbook.eof then
		do until rsGuestbook.eof
			intPosts = intPosts + 1
			rsGuestbook.movenext
		loop
		rsGuestbook.movefirst
	else
		intPosts = 0
	end if
	
	if intPosts > intMax then
		if InStr(intPosts / intMax, ".") = 0 then
			intPages = cint(intPosts / intMax)
		else
			intPages = fix(intPosts / intMax) + 1
		end if
	else
		intPages = 1
	end if

	if Request.QueryString("page") = "" then
		intPage = 1
	else
		intPage = Request.QueryString("page")
	end if

	intStart = (intPage - 1) * intMax
	intStop = ((intPage - 1) * intMax) + (intMax - 1)
	
	Response.Write "<form name=""frmBB"" method=""post"" action=""" & strPageName & "?posted=true"" onSubmit=""return checkForm(this);"">"
	Response.Write "<table width=""" & strTableWidth & """ border=""0"" cellspacing=""0"" cellpadding=""3"">"
	
	'Checks if the resultset is empty
	if not rsGuestbook.eof then
		'Displaying the posts
		i = 0
		do until rsGuestbook.eof
			if i >= intStart and i <= intStop then
				'Date
				Response.Write "<tr>"
				Response.Write "<td colspan=""2""><b>" & formatDateTime(rsGuestbook("BBDate"), vbShortDate) & " " & formatDateTime(rsGuestbook("BBDate"), vbShortTime) & "</b></td>"
				Response.Write "</tr>"
				'Message
				Response.Write "<tr>"
				Response.Write "<td colspan=""2"">" & replace(rsGuestbook("BBMsg"), vbNewLine, "<br>") & "</td>"
				Response.Write "</tr>"
				'Author
				Response.Write "<tr>"
				Response.Write "<td><b>" & rsGuestbook("BBAuthor") & "</b></td>"
				Response.Write "<td align=""right"">&nbsp;"
				'If Emailaddress
				if not rsGuestbook("BBEmail") = "" then
					Response.Write "<a href=""mailto:" & rsGuestbook("BBEmail") & """><img src=""email.gif"" width=""16"" height=""16"" border=""0""></a>&nbsp;"
				else
					Response.Write "<img src=""spacer.gif"" width=""16"" height=""16"">"
				end if
				'If Homepage
				if not rsGuestbook("BBUrl") = "" then
					Response.Write "<a href=""http://" & rsGuestbook("BBUrl") & """ target=""_new""><img src=""url.gif"" width=""16"" height=""16"" border=""0""></a>"
				else
					Response.Write "<img src=""spacer.gif"" width=""16"" height=""16"">"
				end if
				Response.Write "</td>"
				Response.Write "</tr>"
				Response.Write "<tr><td colspan=""2""><hr size=""1"" noshade></td></tr>"
			end if
			
			i = i + 1
			rsGuestbook.MoveNext
		loop
	else
		'If the guestbook is empty...
		Response.Write "<tr>"
		Response.Write "<td colspan=""2""><b>Det finns inga inlägg i gästboken.</b></td>"
		Response.Write "</tr>"
		Response.Write "<tr><td colspan=""2""><hr size=""1"" noshade></td></tr>"
	end if
	
	paging()
	
	'Sign the guestbook
	Response.Write "<tr><td colspan=""2"" height=""50"">&nbsp;</td></tr>"
	Response.Write "<tr>"
	Response.Write "<td colspan=""2""><b>Skriv i gästboken</b></td>"
	Response.Write "</tr>"
	'Author
	Response.Write "<tr>"
	Response.Write "<td colspan=""2""><b>Namn:</b><br><input type=""text"" name=""txtAuthor"" size=""50"" maxlength=""50""></td>"
	Response.Write "</tr>"
	'Email
	Response.Write "<tr>"
	Response.Write "<td colspan=""2""><b>E-postadress:</b><br><input type=""text"" name=""txtEmail"" size=""50"" maxlength=""50""></td>"
	Response.Write "</tr>"
	'Url
	Response.Write "<tr>"
	Response.Write "<td colspan=""2""><b>Hemsida:</b><br><input type=""text"" name=""txtUrl"" size=""50"" maxlength=""50""></td>"
	Response.Write "</tr>"
	'Msg
	Response.Write "<tr>"
	Response.Write "<td colspan=""2""><b>Meddelande:</b><br><textarea name=""txtMsg"" cols=""38"" rows=""10"" onKeyUp=""checkCharsLeft();""></textarea></td>"
	Response.Write "</tr>"
	'Chars left
	Response.Write "<tr>"
	Response.Write "<td colspan=""2""><input type=""text"" name=""txtCharsLeft"" size=""4"" maxlength=""4"" style=""font-family: courier new; courier, helvetica, arial; font-size: 11px; text-align: right; border: solid 0px"" onFocus=""this.blur();""> tecken kvar."
	Response.Write "</tr>"
	'Buttons
	Response.Write "<tr><td colspan=""2"">&nbsp;</td></tr>"
	Response.Write "<tr>"
	Response.Write "<td colspan=""2"">"
	Response.Write "<input type=""submit"" name=""btnSubmit"" value=""Spara"">"
	Response.Write "<input type=""hidden"" name=""hdnAction"" value=""save"">"
	Response.Write "</td>"
	Response.Write "</tr>"
	
	Response.Write "</table>"
	Response.Write "</form>"
	
	'Closes the guestbook resultset
	rsGuestbook.Close
	set rsGuestbook = nothing
	
	'Closes the database connection
	connClose()
end function

Response.Buffer = True
Response.Expires = -1
Response.AddHeader "Pragma", "no-cache"
Response.AddHeader "cache-control", "no-store"

'Saves new post to database
if Request.Form("hdnAction") = "save" and Request.QueryString("posted") = "true" then
	connOpen()
	
	strSql = "insert into Guestbook (BBDate, BBAuthor, BBEmail, BBUrl, BBMsg, BBIp) values ('" & now() & "', '" & Request.Form("txtAuthor") & "', '" & replace(Request.Form("txtEmail"), "mailto:", "") & "', '" & replace(Request.Form("txtUrl"), "http://", "") & "', '" & Server.HTMLEncode(trim(Request.Form("txtMsg"))) & "', '" & Request.ServerVariables("REMOTE_ADDR") & "')"
	dbConn.Execute(strSql)
	
	connClose()
	
	Response.Redirect(strPageName)
end if
%>
Medlem sedan mars 2003970 inlägg
#9

oj...rätt många funktioner antar jag

Medlem sedan juni 200032 969 inlägg
#10

Lite väl mycket irrelevant kod, men connectionstringen borde se ut så här:

strConnString = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.mappath("..\db\guestbook.mdb")

Man kan dela upp det på två rader också, som i ursprungskoden, men jag förstår inte varför.

mvh

Medlem sedan jan. 200358 inlägg
#11

jag har bestämt mig för att försöka bygga upp en egen gästbok med hjälp av idg's kurs. Nu har jag fortfarande problem med att vissa sidan (default.asp). Någon som kan hjälpa mig??

<% Response.Buffer = True %>
<!-- #include virtual="../www/applicationer/adovbs.inc" -->

<html>

	<title>G&auml;stbok</title>

	<font face="verdana" size="4"><b>Gästboken</b></font>
	<hr noshade color="#000000">
	<font face="verdana" size="2">

<% '===================================================================================================================== %>
<% ' Välkomstkod %>
<% '===================================================================================================================== %>
	
<% If Request.QueryString("what") = "" Then %>

	Vad vill du göra?<p>

	<ul>
	<li><a href="default.asp?what=skriv">Skriva i gästboken?</a>
	<li><a href="default.asp?what=tidigare&open=yes">Se tidigare inlägg i gästboken?</a>
	</ul>

<% End If %>

<% '===================================================================================================================== %>
<% 'Öppnar databasen %>
<% '===================================================================================================================== %>

<% If Request.QueryString("open") = "yes" Then %>

<%	Set Connect = Server.CreateObject("ADODB.Connection")
	Connect.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath ("..db/databas.mdb") 

	Set RecSet = Server.CreateObject("ADODB.Recordset") %>

<% End If %>

<% '===================================================================================================================== %>
<% ' Formulärskod för att göra inlägg %>
<% '===================================================================================================================== %>

<% If Request.QueryString("what") = "skriv" Then %>

	<form method="POST" action="default.asp?open=yes&add=yes">

	Skriv ett inlägg!<br>
	<textarea cols="30" rows="10" name="Text"></textarea><p>

	Du som skriver inlägget heter:<br>
	<input type="text" size="30" name="Av"><p>

	<input type="submit" value="Lägg till ditt inlägg">

	</form>

<% End If %>

<% '===================================================================================================================== %>
<% ' Formulärskod för att skapa inlägg %>
<% '===================================================================================================================== %>

<% If Request.QueryString("add") = "yes" Then %>

<%	Addera = "SELECT * FROM gaster"
	RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic

	RecSet.AddNew
	RecSet("text") = Request.Form("Text")
	RecSet("av") = Request.Form("Av")

	RecSet.Update

	RecSet.Close

	Response.Redirect "default.asp" %>

<% End If %>

<% '===================================================================================================================== %>
<% ' Kod för att visa inlägg %>
<% '===================================================================================================================== %>

<% If Request.QueryString("what") = "tidigare" Then %>

	<b>Listar de hundra senaste inläggen (ifall det finns så många)</b><p>

<% Texter = "SELECT * FROM gaster ORDER BY ID"

   RecSet.Open Texter, Connect, adOpenStatic, adLockOptimistic

	Do While Z < 100

	If RecSet.EOF Then 
	Exit Do
	End If %>

	<% =RecSet("text") %><br>
	<% =RecSet("av") %><br>

	<hr noshade size="1" color="black">

<%	RecSet.MoveNext

	Z = Z + 1

	Loop %>

	Tillbaka till <a href="default.asp">framsidan</a>.<br>
	Skriv ett <a href="default.asp?what=skriv">nytt</a> inlägg.

<% End If %>

<% '===================================================================================================================== %>

</html>

Min hemsida består av frames, och när jag länkar till default.asp så visas som sagt inte sidan när jag klickar på länken. något felmedelande får jag inte.

MVH
Stefan

Medlem sedan jan. 200358 inlägg
#12

ingen som kan hjälpa mig??

Medlem sedan mars 20015 287 inlägg
#13

Vad händer då? Länk till sidan?

Medlem sedan mars 20015 287 inlägg
#14

Rensade lite i din kod... dock är den inte helt ok, tex stänger du aldrig din databas. I mina ögon har du tokmånga contextswitchar, iofs en smaksak.

<% Response.Buffer = True %>

<html>

	<title>Gästbok</title>
	<font face="verdana" size="4"><b>Gästboken</b></font>
	<hr noshade color="#000000">
	<font face="verdana" size="2">
<%
'===========================================================
' Välkomstkod
'===========================================================

If Request.QueryString("what") = "" Then %>

	Vad vill du göra?<p>

	<ul>
	<li><a href="default.asp?what=skriv">Skriva i gästboken?</a>
	<li><a href="default.asp?what=tidigare&open=yes">Se tidigare inlägg i gästboken?</a>
	</ul>
<%
End If

'===========================================================
'Öppnar databasen
'===========================================================

If Request.QueryString("open") = "yes" Then

	Set Connect = Server.CreateObject("ADODB.Connection")
	Connect.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath ("..db/databas.mdb") 
	Set RecSet = Server.CreateObject("ADODB.Recordset")

End If

'===========================================================
' Formulärskod för att göra inlägg
'===========================================================

If Request.QueryString("what") = "skriv" Then %>

	<form method="POST" action="default.asp?open=yes&add=yes">

	Skriv ett inlägg!<br>
	<textarea cols="30" rows="10" name="Text"></textarea><p>

	Du som skriver inlägget heter:<br>
	<input type="text" size="30" name="Av"><p>

	<input type="submit" value="Lägg till ditt inlägg">

	</form>
<% 
End If

'===========================================================
' Formulärskod för att skapa inlägg
'===========================================================

If Request.QueryString("add") = "yes" Then

	Addera = "SELECT * FROM gaster"
	RecSet.Open Addera, Connect, 3, 3

	RecSet.AddNew
	RecSet("text") = Request.Form("Text")
	RecSet("av") = Request.Form("Av")

	RecSet.Update
	RecSet.Close
	Response.Redirect "default.asp"

End If

'===========================================================
' Kod för att visa inlägg
'===========================================================

 If Request.QueryString("what") = "tidigare" Then %>

	<b>Listar de hundra senaste inläggen (ifall det finns så många)</b><p>

<% 
Texter = "SELECT * FROM gaster ORDER BY ID"

   RecSet.Open Texter, Connect, 3, 3

	Do While Z < 100

	If RecSet.EOF Then Exit Do
		
 	'End If

response.write RecSet("text") & "<br>"
response.write RecSet("av") & "<br>"
%>

	<hr noshade size="1" color="black">

<%	RecSet.MoveNext

	Z = Z + 1

	Loop 
%>

	Tillbaka till <a href="default.asp">framsidan</a>.<br>
	Skriv ett <a href="default.asp?what=skriv">nytt</a> inlägg.

<%
End If

'===========================================================
 %>

</html>
141 ms totalt · 3 externa anrop · v20260731065814-full.25f56b17
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
139 ms — hämta tråd, inlägg och bilagor (db)