Oprettet ons. d. 15. marts 2000 kl. 21:03:04

fusentasten
fusentasten (20.446 point. Point ude: 450)

Hvad skal der står her (databasehenvisning)

Hej Asp'ere

Jeg ved ikke meget og VBscript, og skal have flyttet en database fra en server, hvor jeg har komplet adgang til min eget site, hvor jeg kun har en wwwroot. Derfor kan jeg jo ikke mere skrive c:\...

Håber I forstår.

Dette er hvad der står nu:

Session("Connect") = "DBQ=c:\www\db\dbKn.mdb;DRIVER={Microsoft Access Driver (*.mdb)};"


Skrevet ons. d. 15. marts 2000 kl. 21:08:26| #1


Skrevet ons. d. 15. marts 2000 kl. 21:16:06| #2

fusentasten
fusentasten (20.446 point)
Nu fik jeg en ny fejl (men vi nærmer os, tror jeg)
Microsoft VBScript runtime error '800a01a8'

Object required: 'Conn'

/hk/admin/conn_db.asp, line 4


;)

Skrevet ons. d. 15. marts 2000 kl. 21:20:36| #3

fusentasten
fusentasten (20.446 point)
Jeg skulle måske lige sige, at jeg har rettet ovenstående til:

Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("dbKn.mdb")

Skrevet ons. d. 15. marts 2000 kl. 22:20:07| #4

qreg
qreg (21.425 point)
Sådan som du kalder det i øjeblikket forudsætter det at databasen ligger i samme bibliotek som filen der kalder databasen. Hvis du i stedet skriver f.eks. \dbKn.mdb vil systemet søge efter databasen i roden af dit webhotel eller hvad det nu er du har.

Sekhmet

Skrevet ons. d. 15. marts 2000 kl. 22:20:25| #5

qreg
qreg (21.425 point)
Hovsa....skulle have været et svar

Skrevet ons. d. 15. marts 2000 kl. 22:26:50| #6

ortrak
ortrak (29.872 point)
Har du husket at skrive: Set Conn = Server.CreateObject("ADODB.Connection")

Ellers skriv hele koden her.


/ortrak

Skrevet ons. d. 15. marts 2000 kl. 22:34:10| #7

qreg
qreg (21.425 point)
doh....overså det med fejlen he he

Skrevet ons. d. 15. marts 2000 kl. 22:35:36| #8

fusentasten
fusentasten (20.446 point)
Her er koden:
Databasen ligger i samme bib.
Sitet ligger i /wwwroot/hk/

(Som sagt: Jeg fatter NADDA af det der VBscript) ;)

<%
Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("dbKn.mdb")
%>


<%response.buffer = true %>
<html>
<head>
    <title>test</title>
</head>
<body >

<h2>Fejl!</h2>
<%
  if request.form("navn") = "" then
Response.write "Der er ikke indtastet noget navn"
%><br><br><a href="java script:history.back()"><b>Forrige side</b></a>
<%

elseif request.form("adresse") = "" then
Response.write "Der er ikke indtastet en adresse"
%><br><br><a href="java script:history.back()"><b>Forrige side</b></a>
<%

elseif request.form("postnr") = "" then
Response.write "Der er ikke indtastet postnr"
%><br><br><a href="java script:history.back()"><b>Forrige side</b></a>
<%
       
elseif request.form("town") = "" then
Response.write "Der er ikke indtastet nogen by"
%>
<br><br><a href="java script:history.back()"><b>Forrige side</b></a>

<%
else

            Set connection = Server.CreateObject("ADODB.Connection")
            Set objRec = Server.CreateObject ("ADODB.Recordset")
           
            connection.Open Session("Connect")
            connection.Execute("INSERT INTO v_mic ( navn, adresse, postnr, town, email) VALUES ('" & Request.Form("navn") &"', '" & Request.Form("adresse") &"', '" & Request.Form("postnr") &"', '" & Request.Form("town") &"', '" & Request.Form("email") &"')")
           
           
Response.redirect "tak.asp"
end if
%>
</body>
</html>

Skrevet ons. d. 15. marts 2000 kl. 22:37:32| #9

qreg
qreg (21.425 point)
Så har ortrak ret....du skal indsætte
Set Conn = Server.CreateObject("ADODB.Connection")

før

Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("dbKn.mdb")

Sekhmet

PS: Husk det er ham der skal have pointene

Skrevet ons. d. 15. marts 2000 kl. 22:41:28| #10

fusentasten
fusentasten (20.446 point)
Nu ser koden sådan ud:
<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("dbKn.mdb")
%>

og jeg få denne her fejl:
Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified

/hk/mike_db.asp, line 42

;)

Skrevet ons. d. 15. marts 2000 kl. 22:56:59| #11

ortrak
ortrak (29.872 point)
Der er noget helt fuldstændigt galt her. Prøv det her i stedet:

Der er noget helt fuldstændigt galt her. Prøv det her i stedet:





<%response.buffer = true %>
<html>
<head>
    <title>test</title>
</head>
<body >

<h2>Fejl!</h2>
<%
  if request.form("navn") = "" then
Response.write "Der er ikke indtastet noget navn"
%><br><br><a href="java script:history.back()"><b>Forrige side</b></a>
<%

elseif request.form("adresse") = "" then
Response.write "Der er ikke indtastet en adresse"
%><br><br><a href="java script:history.back()"><b>Forrige side</b></a>
<%

elseif request.form("postnr") = "" then
Response.write "Der er ikke indtastet postnr"
%><br><br><a href="java script:history.back()"><b>Forrige side</b></a>
<%
       
elseif request.form("town") = "" then
Response.write "Der er ikke indtastet nogen by"
%>
<br><br><a href="java script:history.back()"><b>Forrige side</b></a>

<%
else

            Set connection = Server.CreateObject("ADODB.Connection")
            connection.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("dbKn.mdb")
                       
            connection.Execute("INSERT INTO v_mic ( navn, adresse, postnr, town, email) VALUES ('" & Request.Form("navn") &"', '" & Request.Form("adresse") &"', '" & Request.Form("postnr") &"', '" & Request.Form("town") &"', '" & Request.Form("email") &"')")
           
            connection.Close
            Set connection=nothing
           
Response.redirect "tak.asp"
end if
%>
</body>
</html>


/ortrak

Skrevet ons. d. 15. marts 2000 kl. 22:58:52| #12

ortrak
ortrak (29.872 point)
Der var kun noget fuldstændigt galt én gang. :-]
Jeg har nogle seriøse cut&paste problemer for tiden...

Skrevet ons. d. 15. marts 2000 kl. 22:59:04| #13

fusentasten
fusentasten (20.446 point)
Damn!!!

Jeg fik det til at virke!!! (på en eller anden måde)

Men tak for de hurtige svar alle sammen. Har delt lidt point ud ;)

Jeg skrev:
Set Conn = Server.CreateObject("ADODB.Connection")
Session("Connect") = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("dbKn.mdb")

Skrevet ons. d. 15. marts 2000 kl. 23:08:05| #14

ortrak
ortrak (29.872 point)
Okay, men du må altså lige sortere ud i din kode.
Set objRec = Server.CreateObject ("ADODB.Recordset") bruges ikke til noget.
Du laver to connections, men bruger kun én.
Du lukker ikke nogen af de to connections.
Hvorfor bruge Session() til en simpel connection.
Hvorfor åbne en connection før dine form inputs er blevet valideret.

Det gælder generelt om at åbne sine connections så sent som muligt og lukke dem igen så tidlig som muligt.
Se eventuelt her, hvis du vil vide hvorfor: http://www.learnasp.com/ (...)


/ortrak

Skrevet ons. d. 15. marts 2000 kl. 23:08:53| #15

ortrak
ortrak (29.872 point)
Du hár sagt du ikke er nogen haj til ASP.
Det er bare gode råd...

Skrevet ons. d. 15. marts 2000 kl. 23:16:11| #16

ortrak
ortrak (29.872 point)
Jeg ville nok også skrive:

Trim(Replace(request.form("whatever"), "'", "2 gange '"))

Jeg skriver to gange ', fordi eksperten kun vil vise en enkel '.

Grunden til dette, er at databasen ikke kan klare en enkelt single-quote. Når man replacer alle single-quotes til to single-quotes, læser databasen det som en enkel gyldig single-quote. Ved Trim() fjerner du alle mellemrum i starten og slutningen af strengen. Ellers kan brugeren bare trykke på mellemrumstasten.
Forstår du?


/ortrak

Skrevet ons. d. 15. marts 2000 kl. 23:27:38| #17

fusentasten
fusentasten (20.446 point)
Hej igen ;)

Det der connection / session ved jeg ikke meget om. Faktisk ingenting, desværre.
Jeg har plnaket denne lillse stump kode fra et andet site, mit firma har lavet. Jeg ville bare brilliere med, at jeg da sagtens kunne lave en "skriv dit navn og mail, og få at vide, når vores nye site går i luften"-asp side.

Hvis en af jer vil ryde lidt op i "min" kode, giver jeg gerne points for det.

Skrevet ons. d. 15. marts 2000 kl. 23:27:56| #18

fusentasten
fusentasten (20.446 point)
<%
Set Conn = Server.CreateObject("ADODB.Connection")
Session("Connect") = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("dbKn.mdb")
%>


<%response.buffer = true %>
<html>
<head>
    <title>test</title>
</head>
<body >

<h2>Fejl!</h2>
<%
  if request.form("navn") = "" then
Response.write "Der er ikke indtastet noget navn"
%><br><br><a href="java script:history.back()"><b>Forrige side</b></a>
<%

elseif request.form("email") = "" then
Response.write "Der er ikke indtastet en e-mail adresse"
%><br><br><a href="java script:history.back()"><b>Forrige side</b></a>
 
<%
else

Set connection = Server.CreateObject("ADODB.Connection")
'Set objRec = Server.CreateObject ("ADODB.Recordset")

connection.Open Session("Connect")
connection.Execute("INSERT INTO v_mic ( navn, email) VALUES ('" & Request.Form("navn") &"', '" & Request.Form("email") &"')")
           
           
Response.redirect "tak.asp"
end if
%>
</body>
</html>

Skrevet tor. d. 16. marts 2000 kl. 01:43:13| #19

ortrak
ortrak (29.872 point)
Du kan jo starte med at dele de tidligere point ud... :-]


Skrevet tor. d. 16. marts 2000 kl. 01:44:04| #20

ortrak
ortrak (29.872 point)
Der ligger en renskrevet "version" her: http://home6.inet.tele.dk/ (...)

/ortrak

Skrevet tor. d. 16. marts 2000 kl. 01:46:52| #21

ortrak
ortrak (29.872 point)
hmm...den prøver at loade filen, selvom ASP ikke er understøttet på TeleDK's server. Ikke skide smart. Så må du jo bare se på kilden og kopiere den...

/ortrak

Skrevet tor. d. 16. marts 2000 kl. 11:14:36| #22

fusentasten
fusentasten (20.446 point)
Det virker som det skal. Takker mange gange ;)

Skriv et indlæg




Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] [img]link til billede[/img]
Web- og emailadresser omdannes automatisk til links

Log ind

   

   

Seneste spørgsmål

ASP: formular udtræk med mulighed for at rette

Oprettet den 21. maj 2012 kl. 15.09
quarkb giver 200 point for svar | Giv et svar »

Sorter biblioteker efter dato i ASP

Oprettet den 17. maj 2012 kl. 16.52
4ks giver 60 point for svar | Giv et svar »

Simpel login-funktion (web) - behov for flere logins/brugere

Oprettet den 15. maj 2012 kl. 09.54
madx giver 75 point for svar | Giv et svar »



   




Tips & Tricks fra PC World

Teaser billede

Læserne: Her er vores værste it-indkøb

Det er ikke al it-udstyr, som er det rene guld. Her er nogle af læsernes skrækhistorier.


Anmeldelser fra PC World

Teaser billede

Test: Mobil med Ferrari-design - og en Trabant-motor

Motorola har begået endnu en smartphone med lækkert design og potentiale til at være blandt de bedste. Men den når ikke i mål. Se her hvorfor.


Seneste blogindlæg

Teaser billede

Tvangslukke spørgsmål: Hvad er den bedste løsning?

Hej Vi har mange åbne spørgsmål på Eksperten. Vi ville gerne tvangslukke dem - så et spørgsmål efter f.eks. 6 måneder lukkes. Men der er et par uklarheder som ville være gode at få lidt input til:...


Nyheder fra PC World

Teaser billede

Sådan siger du farvel til Facebook

Læs her, hvordan du dropper Facebook og i stedet anvender nogle brugervenlige alternativer, så du stadig kan være social på nettet.


Nyheder fra Computerworld

Teaser billede

Galleri: De fedeste håndholdte gennem 40 år

Her har du de mest banebrydende håndholdte computere gennem alle tider.


Kurser
Samarbejdspartnere

Udgiver · © 2012 IDG Danmark A/S · Hørkær 18 · 2730 Herlev · Tlf.: 77 300 300 · Fax: 77 300 301 · Brug af personoplysninger