Avatar billede alarmos112 Nybegynder
20. juni 2006 - 21:17 Der er 10 kommentarer

Kan ikke hitte ud af hvilken connection string er ok

Er ved at indsætte en adgangskode på en hjemmeside, siden er lavet i Netobjects Fusion 8 - har købt en component fra Bitmotion som kan lægges ind på wysiwyg hjemmeside programmet.

I opsætningen af komponenten skal man blandt andet angive en connection string til f.eks en access database man har liggende på serveren.

Nu har jeg bakset med det i rigtig lang tid - det længste jer er kommet er denne fejlmedd:

Microsoft VBScript compilation error '800a0401'

Expected end of statement

/Testmiljoe/index.asp, line 25

asp_login_conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password=kodeord; Data Source=Server.Mappath("log/Bruger2006.mdb") ", "", ""

Er der nogen der kan gennemskue hvad der er forkert i asp linien?

Jeg er absolut novice, så er det noget med syntaksen eller hyr?
Avatar billede jps6kb Novice
20. juni 2006 - 21:23 #1
Set asp_login_conn = Server.CreateObject("ADODB.Connection")
asp_login_conn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("log/Bruger2006.mdb")

Prøv sådan der .. :)
Avatar billede alarmos112 Nybegynder
20. juni 2006 - 21:54 #2
Hm :-( jeg har kun en linie at gøre godt med i opsætningen af komponenten, så vidt jeg kan se tilføjer "den" selv asp_login_conn.Open, og det der er herefter, i anførselstegn skriver jeg.

Kan: Set asp_login_conn = Server.CreateObject("ADODB.Connection") på en eller anden måde kommes ind?

Der er flere andre felter der udfyldes bla adgangskode til databasen, den tabel der skal kigges i osv.
Avatar billede jps6kb Novice
21. juni 2006 - 07:36 #3
Okay, det lyder lidt mærkeligt at du kun har en linie at gøre godt med?? Jeg er ikke helt med på hvordan du mener, men,

asp_login_conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password=kodeord; Data Source=" & Server.Mappath("log/Bruger2006.mdb") ", "", ""

Det var i hvertfald fejlen i din string. :) Så må vi se om det virker.
Avatar billede alarmos112 Nybegynder
21. juni 2006 - 19:20 #4
Tja, som sagt jeg er novice.

Det løste ikke problemet.

Brugervejledningen til adgangskontrol programmet giver som eksempel at følgende string kan anvendes - men skriver samtidig at der er utal af muligheder for syntaks.

DRIVER={Microsoft Access Driver (*.mdb)};DBQ=c:\db.mdb;uid=;pwd=;

Den linie syntes ikke at give det ønskede resultat.

Jeg antager at *.mdb ikke skal rettes, samt at c:\db.mdb skal ændres til c:\log\Bruger2006.mdb.

Jeg kan dog ikke helt forstå hvorfor der skal peges på c: er det rigtigt, eller skal det være en anden sti, Bruger2006.mdb ligger jo på serveren og ikke på mit c-drev.

Sakset fra manualen:
Database Connection String
When opening up the connection to the database, this string will be used to generate
the connection. The easiest way to set this up is to specify a SystemDSN on your
server – if you are not running your own server, you may need to ask the web
administrator to do this. If you have defined a SystemDSN on the web server for the
database connection, you only need to specify the name of the SystemDSN here. If
you are not using a SystemDSN, you should specify all the ODBC parameters here.
Examples of non-SystemDSN connection strings:

·  For a SQL server database:

      SERVER=servername;DRIVER={SQL Server};DATABASE=pubs;UID=sa;PWD=;

·  For an Oracle database:

      PROVIDER=MSDASQL;DRIVER={Microsoft ODBC for Oracle};
      SERVER=MyOracleServer;UID=demo;PWD=demo;

For an Access database:
DRIVER={Microsoft Access Driver (*.mdb)};DBQ=c:\db.mdb;uid=;pwd=;

The sample Database Connection Strings shown above should be entered as one
single line – some may be shown as two lines for readability. As this is a fairly
detailed topic with many possible options and variations, not all the possibilities are explored here. For more details on this, please refer to http://msdn.microsoft.com for all the possible options on using connection strings with different databases.

Når jeg siger én linie, så skal det ses i lyset af at programmet har et felt hvor jeg skal angive database connection string, programmet generere så den nødvendige kodning, bla. tilføjer det asp_login_conn.Open.

Det skal tilføjes at jeg ikke rigtig ved om der er SystemDSN på serveren, igen jeg er helt ny på denne bane. Jeg bruger lige en "livline" :)
Avatar billede jps6kb Novice
21. juni 2006 - 19:28 #5
Hehe.. fair nok.. hvad er det for noget du bruger?
Er du sikker på din DB ligger c:\log\Bruger2006.mdb ?

Hvordan ser det ud med fejlmeldinger nu?
Avatar billede alarmos112 Nybegynder
21. juni 2006 - 19:53 #6
Jeg bruger hjemmesideprogrammet Netobjects Fusion 8,og så kan man lægge nogle komponenter ind som kan håndtere forskellige funktioner, herunder adgangskontrol. Den komponent jeg anvender til dette hedder Advanced siteprotector fra Bitmotion, den er lavet specielt som applikation til Fusion 8.

Den access database jeg har koder og brugernavne liggende i ligger på serveren www.octaviaklub.dk/log/Bruger2006.mdb jeg har passwordbeskyttet den så den skulle være lukket, jeg er dog lidt i tvivl om der automatisk "følger" et brugernavn med så som Administrator eller andet, når man beder access om at beskytte databasen med kode.

Selve indgangssiden som login er placeret på kan ses på:
http://www.octaviaklub.dk/Testmiljoe/index.asp

Det skal tilføjes at jeg har sidde med princippet "learning by failure", det har stået på i flere uger nu -jeg er sgu ved at være godt knotten - det læner sig kraftigt op at jeg betaler mig fra det :)
Avatar billede jps6kb Novice
21. juni 2006 - 20:50 #7
Okay.. hvordan ser din connection string ud til det som er der nu så?

Sådan her?

asp_login_conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database Password=kodeord; Data Source=" & Server.Mappath("log/Bruger2006.mdb") ", "", ""
Avatar billede alarmos112 Nybegynder
21. juni 2006 - 21:09 #8
Jeg har givet den denne her:
DRIVER={Microsoft Access Driver (*.mdb)};DBQ=c:\log\Bruger2006.mdb;uid=;pwd=;

Så nu kommer selve loginsiden da frem, men hvis man prøver at logge ind med:

Bruger: jan06
Kode: base6

Så kommer der bare en page not found.

Er det rigtigt at den skal pege på c: jeg havde forestillet mig at den skulle pege på serveren.
Avatar billede jps6kb Novice
21. juni 2006 - 21:24 #9
Der skal ikke c:\ med nej. ;)
Avatar billede alarmos112 Nybegynder
21. juni 2006 - 21:46 #10
Arghhhhh!!!

har fjernet c:\ og har nu:

DRIVER={Microsoft Access Driver (*.mdb)};DBQ=log\Bruger2006.mdb;uid=;pwd=;

Det ændrer ikke på en døjt - jeg holder for i aften tror jeg.
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