Varför funkar inte scriptet??

ASP

30 svar · 360 visningar · startad av Goosefish

Medlem sedan juli 200143 inlägg
Trådstart#1

Hej!
Det står att det är något fel på parametrarna och en massa annat!...rad 22 var de visst kolla koden:

<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body bgcolor="#FFFFFF">
<!-- #inlude virtual="adovbs.inc -->
<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver ={ Microsoft Access Driver (*.mdb)};dbq=c:\inetpub\wwwroot\databas.mdb

If Request.Querystring("Ordning") = "Namn" Then

Set rec = Server.CreateObject("ADODB.Recordset")

rec.Open Addera, Connect, adOpenStatic, adLockOptimistic

%>
<%=rec("Namn")%>
<%=rec("Efternamn")%>
<%=rec("ICQ")%>
<%=rec("Email")%>
<%=rec("Hemsida")%>
<%
rec.Close
Connect.Close
End If
%>
</body>
</html>

Medlem sedan juni 200032 967 inlägg
#2

du har aldrig definierat Addera, som skall vara en sql-fråga.

Addera = "SELECT * FROM Tabellen WHERE bla='bla'"
rec.open ....

(varför kallar du den addera? det ser inte ut som om du lägger till någonting...)

Medlem sedan juli 200143 inlägg
#3

har provat det...men det gör ingen skillnad. Då man gjort det ser det ut så här

<!-- #inlude virtual="adovbs.inc" --><%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:\inetpub\wwwroot\adressbok.mdb"

If Request.Querystring("Ordning") = "Namn" Then

Addera = "SELECT * FROM adresstabell "

End If

Set RecSet = Server.CreateObject("ADODB.Recordset")

RecSet.Open Connect, Addera, adOpenStatic, adLockOptimistic
%>

<%=RecSet("Namn")%>
<%=RecSet("Efternamn")%>
<%=RecSet("ICQ")%>
<%=RecSet("Email")%>
<%=RecSet("Hemsida")%>

<%RecSet.Update
RecSet.Close
Connection.Close

%>

Medlem sedan okt. 20005 273 inlägg
#4

hmm jag gissar på (Idg) ;)

Medlem sedan okt. 20005 273 inlägg
#5

vad får du för exakt felmess....och vilken linje är det...du får gärna markera linjen :)

Medlem sedan juni 200032 967 inlägg
#6

goosefish: uppfylls villkoret If Request.Querystring("Ordning") = "Namn" Then? prova att ta bort if-satsen runt definitionen av sql-frågan.

icaaq: svär inte! ;)

Medlem sedan juli 200143 inlägg
#7

ADODB.Recordset fel '800a0bb9'

Parametrarna är felaktiga, ligger utanför tillåtet intervall eller skapar en inbördes konflikt.

/visa.asp, rad 22

<!-- #inlude virtual="adovbs.inc" --><%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:\inetpub\wwwroot\adressbok.mdb"

If Request.Querystring("Ordning") = "Namn" Then

Addera = "SELECT * FROM adresstabell "

End If

Set RecSet = Server.CreateObject("ADODB.Recordset")

RecSet.Open Connect, Addera, adOpenStatic, adLockOptimistic <<---
%>

<%=RecSet("Namn")%>
<%=RecSet("Efternamn")%>
<%=RecSet("ICQ")%>
<%=RecSet("Email")%>
<%=RecSet("Hemsida")%>

<%RecSet.Update
RecSet.Close
Connection.Close

%>

Medlem sedan juli 200143 inlägg
#8

tog bort if satsen men det är ändå samma felmeddelande

Medlem sedan juni 200032 967 inlägg
#9
  1. vad händer om du tar bort if-satsen runt 'addera = "select ...."'?

  2. jag ser en liten konstig sak. du ska inte ha RecSet.update längst ner. det ska du bara ha när du gör förändringar i tabellen.

mvh,

Medlem sedan juli 200143 inlägg
#10

så här tog jag bort if satsen

<!-- #inlude virtual="adovbs.inc" --><%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:\inetpub\wwwroot\adressbok.mdb"
ifsatsen borta
Addera = "SELECT * FROM adresstabell "

Set RecSet = Server.CreateObject("ADODB.Recordset")

RecSet.Open Connect, Addera, adOpenStatic, adLockOptimistic
%>

<%=RecSet("Namn")%>
<%=RecSet("Efternamn")%>
<%=RecSet("ICQ")%>
<%=RecSet("Email")%>
<%=RecSet("Hemsida")%>

<%
RecSet.Close
Connection.Close%>

Medlem sedan juni 200032 967 inlägg
#11

prova också att byta ut dessa två rader:

Set RecSet = Server.CreateObject("ADODB.Recordset")

RecSet.Open Connect, Addera, adOpenStatic, adLockOptimistic

mot

set RecSet = Connect.Execute(Addera)

mvh,

Medlem sedan juli 200143 inlägg
#12

det problemet vart löst men då kom

Microsoft OLE DB Provider for ODBC Drivers fel '80040e37'

[Microsoft][Drivrutin för ODBC Microsoft Access] Microsoft Jet kan inte hitta tabellen eller frågan 'adresstabell'. Kontrollera att den existerar och att namnet är rätt stavat

/visa.asp, rad 14

upp

Medlem sedan juli 200143 inlägg
#13

jaha...nu fixa jag det problemet...men då kom förstås ett nytt

ADODB.Field fel '80020009'

Antingen är BOF eller EOF satt till True, eller så har aktuell post raderats. Den begärda åtgärden kräver en aktuell post.

?

Medlem sedan juni 200032 967 inlägg
#14

då ser det ut som att tabellen är tom.

stämmer det?

Medlem sedan juli 200143 inlägg
#15

ja det är den nog...hehe...oj
men EOF BOF problemet då?

Medlem sedan juli 200143 inlägg
#16

nu står det att objekt krävs på näst sista raden?

Medlem sedan juni 200032 967 inlägg
#17

så här:

[b]if not RecSet.eof then[/b]
Response.write RecSet("Namn")
Response.write RecSet("Efternamn")
Response.write RecSet("ICQ")
Response.write RecSet("Email")
Response.write RecSet("Hemsida")
[b]else[/b]
Response.write "den e tom ju!"
[b]end if[/b]

mvh,

Medlem sedan juni 200032 967 inlägg
#18

nu står det att objekt krävs på näst sista raden?

du försöker där stänga ett objekt som du kallar för Connection, men det objektet som du tidigare skapat kallade du för Connect.

ändra alltså till Connect.close.

mvh,

Medlem sedan juli 200143 inlägg
#19

JAAAAAA!!!!!!!! Skriptet funkar!!

TACK!! TACK!

Äntligen funkar det!
tack återigen!

Medlem sedan juni 200032 967 inlägg
#20

najs! :)

varsågod!

262 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)