Klurigt

ASP

4 svar · 601 visningar · startad av rikard81

Medlem sedan mars 2007311 inlägg
Trådstart#1

Strular!
Har suttit länge och klurat med får inte min Access-databas att funka. Någon som ser vart felet ligger. Har lagt upp den på en server för asp men det strular.
Databasen heter citat och koden för formulär resp citat ser ut så här:

Citat:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd&quot;&gt;
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Untitled Document</title>
</head>

<body>

<%
'Vi börjar öppna databasen, denna gången med ett RecordSet så vi kan hämta informationen från databasen.
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &
Server.MapPath("DATABASEN.MDB")
Set RecSet = Server.CreateObject("ADODB.Recordset")
SQL = "SELECT * FROM citat"
RecSet.Open SQL, Connect, 3, 3

If RecSet.EOF then 'Om databasen är tom ska följande hända
Response.Write "Databasen är tom!"
else 'Om den inte är det händer detta
Response.Write "<table cellspacing='0' Cellpadding='0'>"
Do UNTIL RecSet.EOF 'gör tills databasen är tom
%>
<tr>
<td><%=RecSet("namn")%></td>
<td><%=RecSet("citat")%></td>
<td><%=RecSet("vem")%></td>
<td><%=RecSet("datum")%></td>
</tr>
<%
RecSet.MoveNext 'HÄmta nästa post.
Loop 'Gör detta tills databasen är tom

Response.Write "</table>"
%>

<a href="formular.asp">Lägg till ett citat</a>
</body>
</html>

Formulär:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd&quot;&gt;
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Untitled Document</title>

</head>

<body>

<form method="post" action="formular.asp?do=spara">
<table><tr>
<td>Ditt Namn:</td><td><input type="text" name="namn" /></td>
</tr><tr>
<td valign="top">Citatet:</td><td><textarea name="citat"></textarea></td>
</tr><tr>
<td>Vem sa det?:</td><td><input type="text" name="vem" /></td>
</tr><tr>
<td></td><td><input type="submit" value="Spara!" /></td>
</tr></table>
</form>

<%

IF Request.QueryString("do") = "spara" then

'Vi skapar en databaskoppling utan Recordsets.
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &
Server.MapPath("DATABASEN.MDB")

'Vi hämtar informationen från formuläret och ger värdena nya enklare namn
'Vi dimmar även objekten
'Vi ska även hämta tid och datumet när citatet las till. (strNow)

Dim strNamn, strCitat, strVem, strNow
strNamn = Request.Form("namn")
strCitat = Request.Form("citat")
strVem = Request.Form("vem")
strNow = now()

'Vi skapar en SQL sträng
SQL = "INSERT INTO citat (namn, citat, vem, datum) VALUES ('"&strNamn&"','"&strCitat&"','"&strVem&"','"&strNow&"')"
'Vi öppnar SQL strängen och sparar i databasen.
Connect.Execute(SQL)

'Vi skickar besökaren till sidan där han kan läsa sitt citat.
Response.Redirect "citat.asp"

'Vi stänger databasen satsen.
Connect.Close
Set Connect = Nothing

'Vi avslutar IF satsen.
End If

%>

</body>
</html>

Medlem sedan juni 200032 967 inlägg
#2

Återigen:

På vilket sätt fungerar det inte?
Felmeddelande?
Och: använd [kod]-taggar.

Medlem sedan mars 2007311 inlägg
#3

Jag får upp formuläret och sedan när jag för in text och klickar så händer inget.. "sidan kan inte visas osv"

Medlem sedan juni 200032 967 inlägg
#4

Om du använder IE - stäng av "egna http-felmeddelanden" / "friendly http error messages" så kan du få vettiga felmeddelanden.

Medlem sedan juli 20003 825 inlägg
#5
SQL = "INSERT INTO citat (namn, citat, vem, datum) VALUES 
('"&strNamn&"','"&strCitat&"','"&strVem&"','"&strNow&"')"

Är datum en sträng? om inte, använd brädgårdar:

SQL = "INSERT INTO citat (namn, citat, vem, datum) VALUES
('"&strNamn&"','"&strCitat&"','"&strVem&"',#"&strNow&"#)"

Vad gäller datum, kan du även skriva date() eller now():

SQL = "INSERT INTO citat (namn, citat, vem, datum) VALUES 
('"&strNamn&"','"&strCitat&"','"&strVem&"',#" & date() & "#)"
260 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
117 ms — deklarationer (db)
0 ms — hämta statistik (cache)
135 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)