Avatar billede chrisrj Forsker
04. juni 2002 - 17:50 Der er 12 kommentarer og
2 løsninger

overførsel af variabel

jeg sidder og en side med nogle links på. Nu prøver jeg så at lave det sådan at siderne bliver genereret dynamisk ved hjælp af overførsel af en variabel.
Men sql sætningen vil ikke genkende min variabel som et argument.
Fejlen lyder :

Fejltype:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)
[Microsoft][ODBC Microsoft Access-driver] Der er for få parametre. Der var ventet 1.
test.asp, line 29




Hvad er der galt ?
Avatar billede tmceu Praktikant
04. juni 2002 - 17:51 #1
Du kunne jo vise din kode...
Avatar billede eagleeye Praktikant
04. juni 2002 - 17:53 #2
så er din variable nok tom
Avatar billede chrisrj Forsker
04. juni 2002 - 17:53 #3
her er noget af koden :

<%
' Databaseforbindelse
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("/test/jamsa.mdb")
Conn.Open DSN

strSQL = "Select nyhedstekst From tekst where id=side"

Set rs = Conn.Execute(strSQL)





Do
  ' menu navn
  strNavn = rs("nyhedstekst")

 



  ' Liste med links
Response.write "<br><FONT face=arial  color=#000000 size=1>"&rs("nyhedstekst")&"</a></font>"

  rs.MoveNext
Loop While Not rs.EOF

Conn.Close
Set Conn = Nothing
%>
Avatar billede tmceu Praktikant
04. juni 2002 - 17:54 #4
strSQL = "Select nyhedstekst From tekst where id=" & Request.QueryString("side") eller Request.Form("side")
Avatar billede tmceu Praktikant
04. juni 2002 - 17:56 #5
Forskellen på QueryString og Form er om du Kalder din side med eks. minside.asp?side=10 (QueryString) eller om du submitter fra en formular, eks.

<FORM ACTION="minside.asp" METHOD="POST">
<INPUT TYPE="TEXT" NAME="SIDE">
<INPUT TYPE="SUBMIT" VALUE="SUBMIT" NAME="SUBMIT">
</FORM>

Sidstnævnte vil komme i Request.Form("Side")
Avatar billede chrisrj Forsker
04. juni 2002 - 18:01 #6
jeg får denne fejl, og begge argumenter er tal i db.

Fejltype:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E07)
[Microsoft][ODBC Microsoft Access-driver] Datatyperne stemmer ikke overens i kriterieudtrykket.
test.asp, line 29
Avatar billede chrisrj Forsker
04. juni 2002 - 18:15 #7
jeg sidder og venter spændt, er du ved at undersøge det eller har du opgivet ??
Avatar billede tmceu Praktikant
04. juni 2002 - 19:31 #8
Ja, så er aftensmaden klaret. Hvilken er linie 29 ?
Avatar billede chrisrj Forsker
04. juni 2002 - 19:58 #9
Response.write "<br><FONT face=arial  color=#000000 size=1>"&rs("nyhedstekst")&"</a></font>"
Avatar billede chrisrj Forsker
04. juni 2002 - 20:02 #10
sorry.. det er denne her:
strSQL = "Select nyhedstekst From tekst where id=" & Request.QueryString("side")
Avatar billede tmceu Praktikant
04. juni 2002 - 20:05 #11
Det lyder som om værdien i Request.QueryString("side") ikke er nummerisk ?

Prøv evt. øverst i din kode at indsætte dette:

Response.Write Request.QueryString("side")
Response.End

Dette udskriver værdien og stopper scriptet

Måske skal du lave en explicit konvertering til nummerisk, eksempelvis:

strSQL = "Select nyhedstekst From tekst where id=" & CInt(Request.QueryString("side"))
Avatar billede chrisrj Forsker
04. juni 2002 - 23:06 #12
jeg har klaret problemet, med hjælp fra anden side. du får dog lidt da det hjalp lidt. :-)
Avatar billede tmceu Praktikant
04. juni 2002 - 23:13 #13
Tak, point for IKKE at løse problemer. Det er næsten som at være politikker :-)
Avatar billede chrisrj Forsker
04. juni 2002 - 23:23 #14
nååh, det var da LIDT hjælp! ;-)
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