09. oktober 2002 - 20:08Der er
34 kommentarer og 1 løsning
ADO Connection fejl...?
Hej, jeg er ved at lave en hjemmeside i ASP. Jeg vil gerne lave en side/form hvor folk kan oprette dig som bruger på siden, for at gøre det, har jeg lavet følgende sider.
opretprivat.asp
Her har jeg skrevet følgende form, der gerne skulde videre siden, den info brugeren indtaster til siden "registrer-bruger.asp" der behandler informationerne og indsætter den i databasen.
Først har jeg oprettet en database i Microsoft Access XP, kaldet "maxdb.mdb", lagt den i den vietuelle sti "/maxdb/maxdb.mdb". I den har jeg oprettet en tabel kaldet "login" hvor jeg har lavet følgende poster: "brugernavn", "adgangskode", "fornavn", "efternavn", "adresse", "postnr", "by", "tlf", "mobil" & "email"
conn.Execute sSQL,adCmdText rs.close set rs = nothing conn.close set conn = nothing %> Dine informationer er blevet gemt i vores database.<BR><BR> <A href="login.asp">[Klik her for at logge ind]</A> --- Når jeg nu åbner denne min "opretprivat.asp" siden og prøvet at oprette en bruger får jeg følgende fejl :
Microsoft VBScript compilation error '800a0408'
Invalid character
/registrer-bruger.asp, line 63
sSQL = "Insert into login (brugernavn,adgangskode,fornavn,efternavn,adresse,postnr,by,tlf,mobil,email) Values" & _ "('"& Ucase(Request("brugernavn")) & "', '"& Request("adgangskode") & "', '"& Request("fornavn") & "', '" & Request("efternavn") & "', '" & Request("adresse") & "', '" & Request("postnr") & "', '" & Request("by") & "', '" & Request("tlf") & "', '" & Request("mobil") & "', '" & Request("email") & "')" --- Nogen der kan fortælle min hvorfor det ikke virker, og hvad jeg skal gøre for at få det til at virke?
Jeg har en anelse om at det måske er fordi databasen er lavet i Access XP, men kan det være det?
SQLState: IM002 Native Error Code: 0 [INTERSOLV][ODBC lib] Data source name not found and no default driver specified
/registrer-bruger.asp, line 63
conn.open
Jeg har båede prøvet med og uden linien : conn.ConnectionString = "Data Source=" & Server.MapPath("maxdb/maxdb.mdb") Skal jeg fjerne denne linie? Lige nu står der :
<% Dim sSQL,conn,rs Set conn = Server.CreateObject("ADODB.Connection") set rs = server.CreateObject("ADODB.Recordset") conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" &_ "Data Source=" & Server.Mappath("maxdb/maxdb.mdb")
En ting mere: Du har vel ikke andre asp-sider, der bruger databaser? Jeg spørger, fordi det ville være rart, hvis du kunne overbevise dig selv om, at noget med database overhovedet kan køre som det skal på den server.
Jeg en mistanke pga at mappath burde ikke returnere så lang en path, men kun den relative path fra siden med scriptet.
Det ligner et problem jeg havde forleden, hvor mappath også opførte sig sært i en lignende situation. Her gik problemet væk efter en restart af serveren.
Jeg har endelig fået det til at virke, prøvede det af under ISS, havde nogle små fejl men fik dem rettet. Problemmet lå ved min udbyder, så dem skal jeg lige have snakket med...
Mange tak for hjælpen Neteffect. Jeg vil gerne give dig dine point, men vil også gerne vide dig 50 flere, hvis du kan hjælpe mig med et enkelt spørgsmål mere...?
Hvordan kan jeg gøre så der bliver tjekket om folk er logget ind, så de ikke bare kan skrive url'en til min main side, og hoppe uden om login'et... hvis du forstår...?
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.