Avatar billede peanut2000 Nybegynder
13. oktober 2004 - 16:50 Der er 6 kommentarer og
1 løsning

omskriv kode så det passer til www.b-one.net ´s

Hej jeg har følgende kode som jeg godt vil have skrevet om, så jeg kan bruge min database på b-one´s (mysql-database)

<%
'Skaber forbindelse til databasen og henter indholdet af den
' Databaseforbindelse - husk at angive sti til din database
if request.form("txtEmail") <> "" then
DSN = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="& Server.MapPath("Db/Attif.mdb")'"C:\Inetpub\wwwroot\attif\Db\Attif.mdb" '
Set Conn = Server.CreateObject("ADODB.Connection")

Conn.Open DSN

strSQL = "Insert into Nyhedsbrev (Email) values('"& Request.Form("txtEmail") & "')"
'response.write strSQL
'response.end
Conn.Execute strSQL
Conn.Close

Set Conn = Nothing
response.redirect "start.asp?Tak=Tak for din tilmeldingen."
end if
%>


De skriver selv følgende connection og ADODB hvis det kan hjælpe:

<%
Dim objConn
Dim objRS
Set objRS = Server.CreateObject("ADODB.Recordset")
Set objConn = Server.CreateObject("ADODB.Connection")

objConn.ConnectionString="DRIVER={MySQL};SERVER=localhost;DATABASE=[DOMAIN_COM];UID=[DOMAIN_COM];PWD=[PASSWORD];"
objConn.Open

objRS.Open "[QUERY]", objConn, 3,3
%>

<%
objRS.Close
Set objRS = Nothing
objConn.Close
Set objConn = Nothing
%>




<%
ConnString ="Driver=
{MySQL};SERVER=localhost;DATABASE=xxx;UID=xxx;PASSWORD=xxx"
Set Conn = Server.CreateObject("ADODB.Connection")
Set RS = server.CreateObject("ADODB.recordset")
Conn.Open ConnString
sql = "select * from table
RS.Open sql, Conn, 1, 2
%>

Håber der er nogen der kan hjælpe
Avatar billede eagleeye Praktikant
13. oktober 2004 - 17:38 #1
I det første skal du hvade rette connection stringen så den bruger mySQL så denne skal rettes:

DSN = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="& Server.MapPath("Db/Attif.mdb")'"C:\Inetpub\wwwroot\attif\Db\Attif.mdb" '


Til dette du skal så udfylde de forskellige felter SERVER, DATEBASE, USER og PASSWORD:

DSN = "DRIVER={MySQL ODBC 3.51 Driver};SERVER=localhost;DATABASE=myDatabase;USER=myUsername;PASSWORD=myPassword;OPTION=3;"
Avatar billede peanut2000 Nybegynder
13. oktober 2004 - 18:04 #2
Når jeg gør ovenstående^

altså:
<%
'Skaber forbindelse til databasen og henter indholdet af den
' Databaseforbindelse - husk at angive sti til din database
if request.form("txtEmail") <> "" then
DSN = "DRIVER={MySQL ODBC 3.51 Driver};SERVER=localhost;DATABASE=styrketraening_;UID=styrketraening_;PASSWORD=9E9vZZZN;OPTION=3;"

Conn.Open DSN

strSQL = "Insert into Nyhedsbrev (Email) values('"& Request.Form("txtEmail") & "')"
'response.write strSQL
'response.end
Conn.Execute strSQL
Conn.Close

Set Conn = Nothing
response.redirect "start.asp?Tak=Tak for din tilmeldingen."
end if
%>

får jeg følgende fejl:
Microsoft VBScript runtime error '800a01a8'

Object required: 'Conn'

/email_sys.asp, line 14
Avatar billede eagleeye Praktikant
13. oktober 2004 - 18:24 #3
Prøv inden:  Conn.Open DSN

At tilføje denne:

Set Conn =Server.CreateObject("ADODB.Connection")
Avatar billede peanut2000 Nybegynder
13. oktober 2004 - 18:31 #4
så får jeg følgende fejlmeddelelse:

Response object error 'ASP 0156 : 80004005'

Header Error

/email_sys.asp, line 24

The HTTP headers are already written to the client browser. Any HTTP header modifications must be made before writing page content.
Avatar billede peanut2000 Nybegynder
13. oktober 2004 - 19:45 #5
Jeg har prøvet at lave koden om til følgende:

<%
'Skaber forbindelse til databasen og henter indholdet af den
' Databaseforbindelse - husk at angive sti til din database
if request.form("txtEmail") <> "" then

Dim my_conn, strSQL, rs
Set my_conn = createobject("ADODB.Connection")

my_conn.open = "DRIVER={MySQL ODBC 3.51 Driver};"_
& "SERVER=localhost;"_
& "DATABASE=???;"_
& "UID=???;"_
& "PWD=???;"

'Conn.Open DSN

strSQL = "Insert into Nyhedstabel (Email) values('"& Request.Form("txtEmail") & "')"
'response.write strSQL
'response.end
conn.Execute(strSQL)
my_conn.close
'Conn.Execute strSQL
'Conn.Close

Set my_conn = nothing 'obj variable released
'Set Conn = Nothing
response.redirect "start.asp?Tak=Tak for din tilmeldingen."
end if
%>

Men får nu følgende meddelelse:
Microsoft VBScript runtime error '800a01b6'

Object doesn't support this property or method: 'open'

/email_sys.asp, line 16
Avatar billede eagleeye Praktikant
13. oktober 2004 - 23:20 #6
Hviklen linje er 16?


Grunden til Header Error er du har en response.redirect efter du har udskrevet HTML kode eller tekst til browseren. Det kan løses ved at tilføje denne linje i toppen af filen:
<% Response.Buffer=true %>
Avatar billede peanut2000 Nybegynder
14. oktober 2004 - 15:10 #7
har fået løst fejlen:

if request.form("txtEmail") <> "" then

Dim objConn
Dim objRS
Set objRS = Server.CreateObject("ADODB.Recordset")
Set objConn = Server.CreateObject("ADODB.Connection")

objConn.ConnectionString="DRIVER={MySQL};SERVER=localhost;DATABASE=styrketraening_;UID=styrketraening_;PWD=xxx;"
objConn.Open

strSQL = "Insert into Nyhedstabel (Email) values('"& Request.Form("txtEmail") & "')"
'response.write strSQL
'response.end
objConn.Execute(strSQL)
objConn.close
'Conn.Execute strSQL
'Conn.Close

Set objConn = nothing 'obj variable released
'Set Conn = Nothing
response.redirect "start.asp?Tak=Tak for din tilmeldingen."
end if
%>
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