Avatar billede freeman Nybegynder
16. november 2001 - 11:45 Der er 12 kommentarer og
3 løsninger

Hvorfor kan den ikke hente det fra databasen ???!???

Jeg har nu længe siddet og bøvlet med en egenlig simpel funktion. En access database med 6 kolonner.. DirectID, PlaceringID, CatagoryID, CatagoryPleacring, GotoID, GotoPlacering.

Hvis man så klikker på et som ser sådan ud ../data/direct.asp?DirectID=1, så skulle den gerne hente den fil som DirectPlacering føre til.

MEN DET GØR DEN IKKE :-(.. jeg får bare en Internel server error 500. Jeg ved at det ikke er serveren som er problemet, så det må være i min direct.asp..

|DIRECT.ASP|
<%
  Dim cnnDatabase, sqlQuery, databasePath, rsLink
    databasePath = Server.MapPath(\"data.mdb\")

  Set cnnDatabase = Server.CreateObject(\"ADODB.Connection\")
    cnnDatabase.ConnectionString = \"DBQ=\" & databasePath & \";UID=;PWD=;Driver={Microsoft Access Driver (*.mdb)};\"
    cnnDatabase.Open

  Dim filID
    filID = Request.QueryString(\"id\")

  Set rsLink = Server.CreateObject(\"ADODB.Recordset\")
    sqlQuery = (\"SELECT DirectPlacering FROM data WHERE DirectID = \" & filID)
 
  rsLink.Open sqlQuery, cnnDatabase, 3, 2

  Response.Redirect(rsLink(\"DirectPlacering\"))

  cnnDatabase.Close
%>

Bemærk lige, at jeg er altså stadig newbiie til ASP :o)

Avatar billede Spotgun Seniormester
16. november 2001 - 11:51 #1
filID = Request.QueryString(\"id\")

skal være:

filID = Request.QueryString(\"DirectID=1\")
Avatar billede keysersoze Ekspert
16. november 2001 - 11:52 #2
spotgun >> nej
Avatar billede Spotgun Seniormester
16. november 2001 - 11:52 #3
whoops....

filID = Request.QueryString(\"DirectID\")
Avatar billede keysersoze Ekspert
16. november 2001 - 11:53 #4
filID = Request.QueryString(\"id\")

skal være

filID = Request.QueryString(\"DirectID\")

 
Avatar billede freeman Nybegynder
16. november 2001 - 11:55 #5
det gjorde ingen forskel :-(
Avatar billede keysersoze Ekspert
16. november 2001 - 12:01 #6
se lige om dette giver en bedre fejl..

Tools>Internet Options>Advanced>Uncheck \"Show friendly HTTP-errors\"
Funktioner>Internet Instillinger>Avanceret>Fjern kryds i \"Vis uskadelige HTTP-fejl\"
Avatar billede aamodtod Nybegynder
16. november 2001 - 12:03 #7
Prøv på dette:
filID = Request.QueryString(\"DirectID\")

Og dette:
(\"SELECT DirectPlacering FROM data WHERE DirectID = \" & filID &\"\")

Odd
 
 
Avatar billede freeman Nybegynder
16. november 2001 - 12:07 #8
keysersoze.. sjovt.. nu fik jeg en fejl.. Det jeg ændrede er vel smart at have slået fra når man leger med asp ?.. :-)

Microsoft OLE DB Provider for ODBC Drivers error \'80040e07\'

[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.

/freestuff.dk/data/direct.asp, line 15
Avatar billede freeman Nybegynder
16. november 2001 - 12:12 #9
aamodtod..
det gjorde ingen forskel :-(
Avatar billede keysersoze Ekspert
16. november 2001 - 12:19 #10
hvis directid ikke er tal

sqlQuery = \"SELECT DirectPlacering FROM data WHERE DirectID = \'\" & filID & \"\'\"

hvis det er

sqlQuery = \"SELECT DirectPlacering FROM data WHERE DirectID = \" & filID & \"\"
 
 
 
 
Avatar billede freeman Nybegynder
16. november 2001 - 12:27 #11
stadig den samme error..

Microsoft OLE DB Provider for ODBC Drivers error \'80040e07\'

[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.

/freestuff.dk/data/direct.asp, line 15
Avatar billede freeman Nybegynder
16. november 2001 - 12:27 #12
og koden ser sådan ud..
<%
  Dim cnnDatabase, sqlQuery, databasePath, rsLink
    databasePath = Server.MapPath(\"data.mdb\")

  Set cnnDatabase = Server.CreateObject(\"ADODB.Connection\")
    cnnDatabase.ConnectionString = \"DBQ=\" & databasePath & \";UID=;PWD=;Driver={Microsoft Access Driver (*.mdb)};\"
    cnnDatabase.Open

  Dim filID
    filID = Request.QueryString(\"DirectID\")

  Set rsLink = Server.CreateObject(\"ADODB.Recordset\")
  sqlQuery = \"SELECT DirectPlacering FROM data WHERE DirectID = \" & filID & \"\"
 
  rsLink.Open sqlQuery, cnnDatabase, 3, 2

  Response.Redirect(rsLink(\"DirectPlacering\"))

  cnnDatabase.Close
%>

Avatar billede mora Nybegynder
16. november 2001 - 13:41 #13
sqlQuery = \"SELECT DirectPlacering FROM data WHERE DirectID = \'\" & filID & \"\'\"

som på ICQ, så virker det :)
Avatar billede mora Nybegynder
16. november 2001 - 13:42 #14
Doh, et svar :)
Avatar billede freeman Nybegynder
16. november 2001 - 13:51 #15
jeps.. takker :-)
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