webForumDet fria alternativet

fel på ASP-kod eller databas??

ASP

2 svar · 213 visningar · startad av nybörjare8

Medlem sedan juli 20021 inlägg
Frågan#1

Jag har hämtat följande kod från IDG:s sida och kört i min Access 97 databas:
--- default.asp ---
<html>
<form method="POST" action="add.asp">
Förnamn<br>
<input type="text" size="30" name="fornamn"><p>
Efternamn<br>
<input type="text" size="30" name="efternamn"><p>
Adress<br>
<input type="text" size="30" name="adress"><p>
<input type="submit" value="Lägg till post">
</form>
</html>
---

Sedan kallas filen add.asp:

--- add.asp ---
<html>
<% Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:\inetpub\wwwroot\databas\adressbok.mdb"

Set RecSet = Server.CreateObject("ADODB.Recordset")
Addera = "SELECT \* FROM adress"

RecSet.Open Addera, Connect
RecSet.AddNew

RecSet("Fornamn") = Request.Form("fornamn")
RecSet("Efternamn") = Request.Form("efternamn")
RecSet("Adress") = Request.Form("adress")

RecSet.Update
RecSet.Close
Connect.Close %\>

Följande uppgifter har nu lagts till i databasen:<p>
Förnamn:<br><b><% =Request.Form("fornamn") %></b><p>
Efternamn:<br><b><% =Request.Form("efternamn") %></b><p>
Adress:<br><b><% =Request.Form("adress") %></b><p>
Lägg till <a href="default.asp">fler poster i adressboken</a>.
</html>
---

Men när jag sedan kör detta via min PWS så får jag följande svar i webläsaren:
---
Provider fel '80004005'

Unspecified error

/databas/add.asp, rad 4
---

Vad är det som är fel med denna kod?
Någon som vet om jag har felet i ASP-koden eller i min databas?
Det känns som det är fel på kopplingen mellan databasen och asp:n, hur kan man kolla att denna fungerar som man vill?

Tack på förhand!!

/nybörjaren8

Medlem sedan juli 20012 450 inlägg
#2

Vad är rad 4?
Prova med:

Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq="& Server.MapPath("databas/adressbok.mdb") 
Set RecSet = Server.CreateObject("ADODB.Recordset") 
AddThread = "Select * from adress"
RecSet.Open AddThread, Connect,3,3
RecSet.Addnew
RecSet("Fornamn") = Request.Form("fornamn") 
RecSet("Efternamn") = Request.Form("efternamn") 
RecSet("Adress") = Request.Form("adress") 
RecSet.Update
RecSet.Close
Connect.Close
Medlem sedan juli 20003 825 inlägg
#3

En teori:

Connect.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("\databas\adressbok.mdb")

---
Server.MapPath måste inledas med en backslash. Annars blir sökvägen (för dig) C:\arbeten\min hemsidadatabas\adressbok.mdb

Ska vara: C:\arbeten\min hemsida\databas\adressbok.mdb

Are you with??

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