webForumDet fria alternativet

Filen används redan????

ASP

9 svar · 263 visningar · startad av PixelFix

Medlem sedan juni 200045 inlägg
Frågan#1

Jag kan inte visa en kategorilista i min testbutik. Kategorierna hämtas från en databas. Men filen som ska hämta kategorierna fungerar inte, jag får felmeddelandet:
Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Microsoft][Drivrutin för ODBC Microsoft Access] Det går inte att använda '(okänt)'. Filen används redan.

/tommyweb/butiken/kategorilista.asp, line 6

På rad 6 i filen kategorilista står det:
MinCon.Open "DSN=xxxx;UID=;PWD="

Jag kan inte begripa vad som är fel. Det går att söka produkter. Någon som kan hjälpa mig? Och vad behöver ni för ytterligare information?

Adressen till testbutiken är: http://www.komvux.mariestad.se/tommyweb/butiken/

------------------
Tommy

Medlem sedan juni 200032 967 inlägg
#2

du har inte databasen öppen i access?

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
nobody expects the spanish inquisition!</A>

Medlem sedan juni 200045 inlägg
#3

Nä... databasen är inte öppen.
När jag klickar på knappen "Till Butik" så körs koden i filen start.asp

<!-- #INCLUDE FILE="adovbs.inc" -->
<%
cat = TRIM( Request( "cat" ) )
IF cat = "" THEN cat = "Home"
Set MinCon = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.Recordset")
MinCon.Open "DSN=xxxx;UID=;PWD="
%>
<html>
<head>
<title>Innehåll</title>
<link rel=stylesheet href="stil.css" type="text/css">
</head>
<body background="bilder/bg_innehall_ny.gif" bgproperties="fixed">
<center>
<table border="0" width=100% cellpadding=0 cellspacing=0>
<tr>
    <td height=10px></td>
</tr>
<tr>
    <td width="27px"></td>
    <td align="center"><h6>Butiken</h6></td>
</tr>
<tr>
    <td></td><td bgcolor="#53c6fb" align="center"><br>Sök produkt eller välj kategori.<br><br></td>
</tr>
<tr>
    <td></td><td bgcolor="#53c6fb" align="center"><form method="post" action="search.asp">
        <input name="searchfor" size="15">
        <input type="submit" value="Sök">
        </td></form>
</tr>

<tr>
        <td></td>
        <td bgcolor="#53c6fb">
        <font size="3"><b>
        <!-- #INCLUDE FILE="kategorilista.asp" -->
        </b></font>
        </td>
    </tr>
    </table>
    </td>

<td valign="top">
<% IF cat = "Home" THEN %>
<% ELSE %>
<!-- #INCLUDE FILE="produktlista.asp" -->
<% END IF %>
</td></tr>
</center>
</body>
</hmtl>

Tar jag bort databasanslutningen högst upp så läses kategorilista.asp in. Men då fungerar inte produktlista.asp.

Undrar var felet kan ligga?

------------------
Tommy

Medlem sedan juni 200032 967 inlägg
#4

hur ser koden i kategorilista.asp resp. produktlista.asp ut?

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
nobody expects the spanish inquisition!</A>

Medlem sedan juni 200045 inlägg
#5

Kategorilista:

<link rel=stylesheet href="stil.css" type="text/css">
<%
Set MinCon = Server.CreateObject("ADODB.Connection")
Set catRs = Server.CreateObject("ADODB.Recordset")
sqlString = "SELECT DISTINCT Kategori FROM Lager ORDER BY Kategori"
MinCon.Open "DSN=xxxx;UID=;PWD="
catRs.Open sqlString, MinCon
%>

<% If cat = "Home" THEN %>
<font color="red"><b></b></font>
<UL>
<% ELSE %>
<a href="start.asp?cat=Home">Home</a>
<UL>
<% END IF %>
<% WHILE NOT catRs.EOF %>
<% IF catRs( "Kategori" ) = cat THEN %>
<li><font color="red"><b>
<%=catRs( "Kategori" )%>
</b></font>
<% ELSE %>
<li><a href="start2.asp?cat=<%=catRs("Kategori")%>"><%=catRs( "Kategori" )%></a>
<% END IF %>
<% 
catRs.MoveNext
WEND 
%>
</UL>
<% catRs.Close %>

Produktlista:

<%
Set MinCon = Server.CreateObject("ADODB.Connection")
Set prodRs = Server.CreateObject("ADODB.Recordset")
sqlString = "SELECT Artnr, Kategori, Produkt, Utpris FROM Lager WHERE Kategori='" & cat & "'ORDER BY Artnr" 
MinCon.Open "DSN=xxxx;UID=;PWD="
prodRs.Open sqlString, MinCon
%>
<table width="100%" border=0 cellpadding=0 cellspacing=0>
<%
WHILE NOT prodRs.EOF
%>
<link rel=stylesheet href="stil.css" type="text/css">
<body background="bilder/bg_innehall.jpg">

<tr>
  <td width="20px"></td>
  <td width="60px"></td>
  <td><b>
  <a href="product.asp?Nr=<%=prodRs("Artnr")%>"
  <b><%=prodRs("Kategori")%></b></a>
  <br><%=prodRs("Produkt")%>
  <br><br></td>
</tr>

<%
prodRs.MoveNext
WEND
%>

</table>

------------------
Tommy

Medlem sedan juni 200045 inlägg
#6

Ok! Ska ta bort kopplingarna.

------------------
Tommy

Medlem sedan juni 200045 inlägg
#7

Nä... fick meddelandet:
Microsoft VBScript runtime error '800a01a8'

Object required: 'catRs'

/tommyweb/butiken/kategorilista.asp, line 11

Allting fungerade för ett par dagar sedan. Måste ha schabblat någonstans. Tagit bort något av misstag. Men vad?
Det funkar ju om jag söker på något t.ex. bok.

------------------
Tommy

Medlem sedan juni 200032 967 inlägg
#8

jag hade alltså inte tänkt att du skulle ta bort dina recordset, utan endast när du sätter databaskopplingen.

ta bort följande rader i dina två filer (de fetmarkerade):

[b]Set MinCon = Server.CreateObject("ADODB.Connection")[/b]
Set prodRs = Server.CreateObject("ADODB.Recordset")
sqlString = "SELECT Artnr, Kategori, Produkt, Utpris FROM Lager WHERE Kategori='" & cat & "'ORDER BY Artnr" 
[b]MinCon.Open "DSN=xxxx;UID=;PWD="[/b]
prodRs.Open sqlString, MinCon

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
nobody expects the spanish inquisition!</A>

Medlem sedan juni 200045 inlägg
#9

Det fungerar.
Du ska ha stort tack.
Nu kan jag gå vidare.
Trevlig Helg!
:D

------------------
Tommy

Medlem sedan juni 200032 967 inlägg
#10

varsågod och trevlig älg, själv! :)

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
nobody expects the spanish inquisition!</A>

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