Avatar billede a71983 Nybegynder
03. oktober 2003 - 15:01 Der er 31 kommentarer

kan ikke tilkoble databasen

OK. Jeg får følgende fejl...
Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Microsoft][ODBC Microsoft Access Driver]General error Unable to open registry key 'Temporary (volatile) Jet DSN for process 0x580 Thread 0x61c DBC 0xb107df4 Jet'.

/shop/db.inc, line 30

Jeg bruger følgende script til at connecte til man mdb-fil

<!-- #include file="adovbs.inc" -->
<%
'--------------------------------------------------------------------
'
' Constants added for shopping cart
'
' (c) 1999 Katrien De Graeve
'
' http://www.URLogy.com
'--------------------------------------------------------------------

Const maxCartItems = 10
Const cartAttributes = 5

'--- Shopping cart attributes ----
Const cProductid = 1
Const cProductCode = 2
Const cProductname = 3
Const cQuantity = 4
Const cUnitPrice = 5
%>

<%
Dim dbc
Dim strConn
Dim strpath

strConn = "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("\shop\admin\scart.mdb")
Set dbc = Server.CreateObject("ADODB.Connection")
dbc.open strConn
%>
Avatar billede steen_hansen Forsker
03. oktober 2003 - 15:04 #1
Hm, nu bliver jeg lige i tvivl:

strConn = "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("\shop\admin\scart.mdb")

=

strConn = "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("/shop/admin/scart.mdb")
Avatar billede a71983 Nybegynder
03. oktober 2003 - 15:06 #2
øhhh... Jeg er ikke helt med
Avatar billede steen_hansen Forsker
03. oktober 2003 - 15:09 #3
\ istedet for /

- men det er ikke det. Kigger på din Set dbc ....
Avatar billede a71983 Nybegynder
03. oktober 2003 - 15:13 #4
Ok... Jeg må indrømme at jeg ikke har super tjek på de her, så du er nødt til at skrive det med lidt mere "dansk"  :-)
Avatar billede steen_hansen Forsker
03. oktober 2003 - 15:15 #5
Kan du prøve med dette (REM dine egne linier ud):

' DSNLess forbindelse til databasen
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("/shop/admin/scart.mdb")

Set myConn = Server.CreateObject("ADODB.Connection")
myConn.Open strDSN
Avatar billede steen_hansen Forsker
03. oktober 2003 - 15:15 #6
Jeg mente slash (/) istedet for backslash (\)
Avatar billede steen_hansen Forsker
03. oktober 2003 - 15:17 #7
Du REM(ark=bemærkning) dine linier ud ved at sætte en apostrof i starten af kommandolinien:


<%
'Dim dbc
'Dim strConn
'Dim strpath

'strConn = "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("\shop\admin\scart.mdb")
'Set dbc = Server.CreateObject("ADODB.Connection")
'dbc.open strConn

' DSNLess forbindelse til databasen
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("/shop/admin/scart.mdb")

Set myConn = Server.CreateObject("ADODB.Connection")
myConn.Open strDSN
%>
Avatar billede a71983 Nybegynder
03. oktober 2003 - 15:17 #8
hvor meget af mit eget???
Nu har jeg gjort følgende:

<!-- #include file="adovbs.inc" -->
<%
'--------------------------------------------------------------------
'
'
'
'
'
'
'--------------------------------------------------------------------

Const maxCartItems = 10
Const cartAttributes = 5

'--- Shopping cart attributes ----
Const cProductid = 1
Const cProductCode = 2
Const cProductname = 3
Const cQuantity = 4
Const cUnitPrice = 5
%>

<%
Dim dbc
Dim strConn
Dim strpath

'strConn = "Driver={Microsoft Access Driver (*.mdb)};DBQ= " & Server.MapPath("\shop\admin\scart.mdb")
'Set dbc = Server.CreateObject("ADODB.Connection")
'dbc.open strConn


' DSNLess forbindelse til databasen
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("/shop/admin/scart.mdb")

Set myConn = Server.CreateObject("ADODB.Connection")
myConn.Open strDSN



%>
Avatar billede a71983 Nybegynder
03. oktober 2003 - 15:20 #9
det virker stadig ikke, men det har virket tidligere i dag. Jeg ved ikke havd det er gået galt.
Avatar billede steen_hansen Forsker
03. oktober 2003 - 15:22 #10
<!-- #include file="adovbs.inc" -->
<%
'--------------------------------------------------------------------
'
' Constants added for shopping cart
'
' (c) 1999 Katrien De Graeve
'
' http://www.URLogy.com
'--------------------------------------------------------------------

Const maxCartItems = 10
Const cartAttributes = 5

'--- Shopping cart attributes ----
Const cProductid = 1
Const cProductCode = 2
Const cProductname = 3
Const cQuantity = 4
Const cUnitPrice = 5
%>

<%
'Dim dbc
'Dim strConn
'Dim strpath

'strConn = "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("\shop\admin\scart.mdb")
'Set dbc = Server.CreateObject("ADODB.Connection")
'dbc.open strConn

' DSNLess forbindelse til databasen (mit forslag)
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("/shop/admin/scart.mdb")

Set myConn = Server.CreateObject("ADODB.Connection")
myConn.Open strDSN

%>
Avatar billede a71983 Nybegynder
03. oktober 2003 - 15:22 #11
ok, nu fik jeg forbindelse, men nu får jeg denne fejl:
Vælg Produkt du ønsker at bestille:
ADODB.Recordset error '800a0bb9'

Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another.

/shop/Default.asp, line 26

Min kode ser således ud:

<!-- #include file="db.inc" -->
<%
'if user returns to the homepage after shopping, clean up the session variables
If Request.QueryString ("end") = 1 Then
    Session.Abandon
End If
%>
<html>

<head>
<title>Online Bestilling</title>
</head>

<body>

<table border="0" width="600" cellpadding="4">

  <tr>
   
    <td width="480">Vælg Produkt du ønsker at bestille:
    <ul>
<%
'create recordset to show categories from database
Dim rs
Set rs = Server.CreateObject ("ADODB.Recordset")
rs.Open "categories", dbc, adOpenForwardOnly,adLockReadOnly,adCmdTable
While Not rs.EOF
%>
      <li><a HREF="products.asp?id=<%= rs("categoryID") %>&amp;cat=<%= rs("catdescription") %>"><%= rs("catdescription") %></a></font>
      </li>
<%
rs.MoveNext
Wend
rs.Close
dbc.Close
Set rs = Nothing
Set dbc = Nothing
%>
    </ul>
    <p>&nbsp;</td>
  </tr>
</table>
</body>
</html>
Avatar billede a71983 Nybegynder
03. oktober 2003 - 15:24 #12
jeg ved ikke hvad der sker, det virker og så virker det ikke minuttet efter.. Så kommer den igen med fejlmedelsen fra før...
Avatar billede steen_hansen Forsker
03. oktober 2003 - 15:27 #13
Ok, du bruger dbc m.m. længerede nede, det er derfor du får denne fejl. Prøve at fjerne ' fra

Dim dbc
Dim strConn
Dim strpath
Avatar billede steen_hansen Forsker
03. oktober 2003 - 15:27 #14
'Dim dbc
'Dim strConn
'Dim strpath

=

Dim dbc
Dim strConn
Dim strpath
Avatar billede a71983 Nybegynder
03. oktober 2003 - 15:28 #15
fra den fil der db.inc eller default.asp ??
Avatar billede steen_hansen Forsker
03. oktober 2003 - 15:29 #16
Nej, det er forkert, der skal laves mere om ...
Avatar billede steen_hansen Forsker
03. oktober 2003 - 15:30 #17
Hvor har du hentet scriptet fra?
Avatar billede a71983 Nybegynder
03. oktober 2003 - 15:31 #18
jeg har hentet det fra: http://www.urlogy.com/asp/ashopkart.asp
Avatar billede steen_hansen Forsker
03. oktober 2003 - 15:32 #19
Har fundet det. Kigger ...
Avatar billede steen_hansen Forsker
03. oktober 2003 - 15:32 #20
Hvilket dokument er det?
Avatar billede a71983 Nybegynder
03. oktober 2003 - 15:33 #21
hvad tænker du på... ?
Avatar billede steen_hansen Forsker
03. oktober 2003 - 15:34 #22
Det, som du har taget koden fra og lagt ind på E.

Har du lagt Access-databasen det rigtige sted etc?
Avatar billede a71983 Nybegynder
03. oktober 2003 - 15:37 #23
jeg er sikker på at at databasen ligger det rigtige sted. Jeg får nu denne fejl:
Vælg Produkt du ønsker at bestille:
ADODB.Recordset error '800a0bb9'

Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another.

/shop/Default.asp, line 26

Dokumentet ser således ud:
<!-- #include file="db.inc" -->
<%
'if user returns to the homepage after shopping, clean up the session variables
If Request.QueryString ("end") = 1 Then
    Session.Abandon
End If
%>
<html>

<head>
<title>Online Bestilling</title>
</head>

<body>

<table border="0" width="600" cellpadding="4">

  <tr>
   
    <td width="480">Vælg Produkt du ønsker at bestille:
    <ul>
<%
'create recordset to show categories from database
Dim rs
Set rs = Server.CreateObject ("ADODB.Recordset")
rs.Open "categories", dbc, adOpenForwardOnly,adLockReadOnly,adCmdTable
While Not rs.EOF
%>
      <li><a HREF="products.asp?id=<%= rs("categoryID") %>&amp;cat=<%= rs("catdescription") %>"><%= rs("catdescription") %></a></font>
      </li>
<%
rs.MoveNext
Wend
rs.Close
dbc.Close
Set rs = Nothing
Set dbc = Nothing
%>
    </ul>
    <p>&nbsp;</td>
  </tr>
</table>
</body>
</html>
Avatar billede steen_hansen Forsker
03. oktober 2003 - 15:38 #24
Har du ændret i DB?
Avatar billede a71983 Nybegynder
03. oktober 2003 - 15:40 #25
Ja jeg har sat nogle katagorier samt produkter ind
Avatar billede steen_hansen Forsker
03. oktober 2003 - 15:42 #26
Ok. Jeg bliver nødt til at smutte i byen, skal handle ind. Men jeg kigger på det senere. Snakkes :o)
Avatar billede a71983 Nybegynder
03. oktober 2003 - 15:43 #27
jepper... tak for det !
Avatar billede johnner Nybegynder
03. oktober 2003 - 15:43 #28
Hvad så med at skrive den fysiske sti:
strConn = "Driver={Microsoft Access Driver (*.mdb)};DBQ=C:\Inetpub\wwwroot\database.mdb"
Set connection = Server.CreateObject("ADODB.Connection")
connection.open strConn
Avatar billede a71983 Nybegynder
03. oktober 2003 - 15:46 #29
så skal jeg også lægge databasen fysisk på c: ik ?? Hvordan kan jeg så se om det virker på nettet
Avatar billede steen_hansen Forsker
03. oktober 2003 - 15:46 #30
Problemet er nok ikk DB-forbindelsen, men nærmere de dim's og muligvis RS, der er blevet ændret/tilføjet.

Smutter lige, kigger ind senere.
Avatar billede a71983 Nybegynder
03. oktober 2003 - 15:47 #31
yes..
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester