webForumDet fria alternativet

Klurigt

ASPur ASP

4 svar · 588 visningar · startad av rikard81

Medlem sedan mars 2007311 inlägg
Frågan#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 969 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 969 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() & "#)"
139 ms totalt · 3 externa anrop · v20260731065814-full.55e59744
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
136 ms — hämta tråd, inlägg och bilagor (db)