Avatar billede hyperactive Nybegynder
21. maj 2001 - 22:06 Der er 6 kommentarer og
1 løsning

ASP Connection fejl!!!! Hjælp, Please!!!

Jeg har lavet denne kode, som gerne skulle vælge et tilfældigt banner fra en MySQL Database tabel:
------------

strConnection = \"driver={MySQL};server=localhost;database=db\"
    Set DBConnection = Server.CreateObject(\"ADODB.Connection\")
    DBConnection.Open strConnection
    SQL = \"SELECT * FROM banners WHERE global = 1\"
    Set RS = DBConnection.Execute(SQL)
    Randomize
******    RS.Move(int(rs.RecordCount * rnd))
    Response.Write (\"<a href=\'\" & RS(\"linkurl\") & \"\'><img src=\'\" & RS(\"bannerurl\") & \"\' width=\'\" & x & \"\' height=\'\" & y & \"\' border=\'0\'></a>\")
   
    Set RS = Nothing
    Set activeConnection = Nothing
------------

Når jeg åbner siden får jeg følgende fejl:
------------

Microsoft OLE DB Provider for ODBC Drivers (0x80040E24)
Rækkesættet understøtter ikke baglæns hentning.
------------

Fejlmeddelelsen henviser til den linie, jeg har markeret med ******
Avatar billede hyperactive Nybegynder
21. maj 2001 - 22:07 #1
Jeg går ud fra, at det er noget med Cursor type, men ved ikke helt, hvor jeg definerer denne.
Avatar billede weje Nybegynder
21. maj 2001 - 22:12 #2
with rs
    .CursorLocation = adUseServer
    .CursorType = adOpenStatic
    .LockType = adLockOptimistic
end with

Skriv dette før rs.move :)

Weje
Avatar billede torbenmelander Nybegynder
21. maj 2001 - 22:12 #3
ja det giver nogle problemmer at du randomizer, fordi rs ikke undersøtter baglæns hentning!

Skal koden bruges til at tage en hvilken som helst post, for så skal jeg da sikkert godt bikse noget sammen...
Avatar billede hyperactive Nybegynder
21. maj 2001 - 22:16 #4
weje.... Hvis jeg skriver det lige efter \'Set RS = DBConnection.Execute(SQL)\' får jeg følgende fejl:

ADODB.Recordset (0x800A0E79)
Handlingen er ikke tilladt, mens objektet er åbent.
Avatar billede torbenmelander Nybegynder
21. maj 2001 - 22:25 #5
brug:

Set RS = Server.CreateObject(\"ADODB.Recordset\")
SQL = \"SELECT * FROM banners WHERE global = 1\" RS.Open SQL,DBConnection,adUseServer, adOpenStatic,adLockOptimistic

istedet
Avatar billede hyperactive Nybegynder
21. maj 2001 - 22:32 #6
torbenmelander 

Det giver følgende fejl:

Fejltype:
ADODB.Recordset (0x800A0BB9)
Argumenterne har en forkert type eller er uden for det angivne område, eller der er opstået en konflikt mellem dem.

Kan det være fordi MySQL ikke understøtter cursor på den samme måde som f.eks. Access???
Avatar billede weje Nybegynder
21. maj 2001 - 22:38 #7
Det er muligt at det ikke er det samme med MySql. Du skal sætte det ind før du executer...

Jeg opretter først min rs og derefter \"cursor\" og til sidst execute sql...

oohhh, du skal huske at include adovbs.inc...

Weje
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