Hejsa Tha_old
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified
/inc_initialize.asp, line 16
Som fejlen antyder, har du problemer i linie 16 på asp siden.
Den fortæller dig, at den ikke kan finde "felt navnet" fra din database af, og at du skal rette dette.
Udover det skal du tjekke, at dit "tabel navn" du har skrevet i din asp kode passer overens med database navnet.
Og at din forbindelse til databasen, er sat korrekt op i filen inc_initialize.asp.
Har du flere forskellige undermapper, skal du også huske at rette stien, medmindre du har lagt alle filer i samme Root mappe på serveren.
Eksempel med sti til din database:
myConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("/Din undermappe/Endnu en undermappe/Din databasefil.mdb")
Okay tjekker lige op på det.
Linje 16 siger i inc:initialize.asp
"Dbc.Open DbConnectionString", er det forkert ?
Det er svært at se, da resten af koden mangler.
Men prøv lige dette asp (test udtræk) her, og husk at rette stien til databasen.
<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=d:\sti\til\database.mdb"
Set rs = "Select From Din Tabel Order By dit tabel felt"
While Not rs.EOF
Response.Write rs("Din felt fra tabellen") & "<br>"
rs.MoveNext
Wend
%>
fra dsn.asp
<%
' dsn-streng der bruges i CMS defineres her:
Dim DbConnectionString
DbConnectionString = "DSN=oldmysql;DATABASE=mdbuser1180258;UID=mdbuser1180258;PWD=7cuu7uiv"
'DbConnectionString = "DRIVER={MySQL ODBC 3.51 Driver};"_
' & "SERVER=mysql5-1num5.webhosting.dk;"_
' & " DATABASE=local00236;"_
' & "UID=root;PWD=; OPTION=3"
%>
Fra inc_initialize.asp
<!-- METADATA TYPE="typelib" uuid="00000205-0000-0010-8000-00AA006D2EA4" -->
<!--#include file="inc_stdlib.asp"-->
<!--#include file="_setup.asp"-->
<!--#include file="include/dsn.asp"-->
<!--#include file="include/ini.asp"-->
<%
Response.CacheControl = "no-cache"
Response.AddHeader "Pragma", "no-cache"
Response.Expires = -1
' SITE CONSTANTS
' PRIMARY DATABASE CONNECTION
Dim Dbc
Set Dbc = Server.CreateObject("ADODB.Connection")
Dbc.Open DbConnectionString
' LANGUAGE INITIALIZATION
Dim langPrefix : langPrefix = "001"
Dim LanguageID, TekstLanguageID, IsoLanguageID
If(Request.QueryString("languageId")<>"") Then
Session("LanguageID") = Request.QueryString("languageId")
End If
If(Session("LanguageID")<>"") Then
LanguageID = Session("LanguageID")
Else
LanguageID = "1"
'If(Right(Request.ServerVariables("HTTP_HOST"),2)="dk") Then
' LanguageID = "1"
'Else
' LanguageID = "2"
'End If
End If
Dim langFrontPageId : langFrontPageId = 0
Dim rsLang : Set rsLang = Dbc.Execute("SELECT sproglag,isonavn,forsideId FROM sprog WHERE id="&LanguageID)
If(NOT rsLang.EOF) Then
IsoLanguageID = rsLang("isonavn").Value
langFrontPageId = rsLang("forsideId").Value
Set rs = Dbc.Execute("SELECT LEFT(side_id,3) FROM tekst WHERE RIGHT(side_id,11)='000.000.000' AND titel='"&rsLang("sproglag")&"'")
If(NOT rs.EOF) Then
langPrefix = rs(0).Value
Else
Response.Write("Fejl: sproglaget '"&rsLang("sproglag")&"' blev ikke fundet i 'tekst'")
End If
Else
Response.Write("Fejl: sproglaget blev ikke fundet i 'sprog'")
End If
Function GetSystemField(name)
Dim rs
Set rs = Dbc.Execute("SELECT tekst FROM tekst WHERE titel LIKE '_System: "&name&"%' AND LEFT(side_id,3)='"+langPrefix+"'")
If(NOT rs.EOF) Then
GetSystemField = rs("tekst").Value
End If
End Function
%>
Jeg finder ikke helt det du nævner, i noget af min kode?!
Der skal testes uden brug af include, prøv og lave en ny asp side, hvor du både har database tilslutningen, og asp koden samlet 1 sted.
Og da du bruger mysql database, så vil jeg lave connection med:
<%
Connection = "DRIVER={MySQL ODBC 3.51 Driver}; SERVER=localhost; DATABASE=dinhjemmeside.dk; UID=dinhjemmeside.dk;PASSWORD=skrivpasswordher; OPTION=3"
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open(Connection)
%>
Du er nød til at ændre dit password til db'en
da du har offentliggjort den her, og så varer det ikke længe før den bliver hacket....
"DSN=oldmysql;DATABASE=mdbuser1180258;UID=mdbuser1180258;PWD=7cuu7uiv"
'DbConnectionString = "DRIVER={MySQL ODBC 3.51 Driver};"_
Puha hehe
Det får jeg vist aldrig til at virke det der.
Altså jeg skal:
1. opret en kopi af inc_initialize.asp
2. Læg det ind du har skrevet ovenover her
Skal jeg bare lave en kopi af den fil og slette alt der har med include at gør, og så bare bruge resten af koden stadig ?
Skal jeg ikke erstatte DATABASE=dinhjemmeside.dk med DATABASE=mitdatabasenavn?, eller har jeg misforstået noget?
Din fejl ligger her :
DbConnectionString = "DSN=oldmysql;DATABASE=mdbuser1180258;UID=mdbuser1180258;PWD=7cuu7uiv"
Den henviser til at der er lavet en database connection på serveren, som hedder oldmysql.
som fejlen antyder: "Data source name not found and no default driver specified"
Data Source Name = DSN ... = oldmysql ... not found = ikk fundet på serveren.
og da du ej heller angiver nogen driver - bliver det til en fejl...
Hej #10
Hvad foreslår du så jeg gør? Hvad skal den hedde i stedet for oldmysql?
Og hvad med driveren hvordan angiver man den?
Jeg har uploadet databasen via phpmyadmin og det burde være ok?!
Jeg er vant til php, men har aldrig arbejdet med ASP før.
Det må jo være en lille ting som mangler siden den kan fange det den kan nu?!