Det jag vill göra är att via ASPupload ge besökaren möjlighet att ladda upp bildfiler till min databas Access (dynamik.mdb).
Varför får jag nedanstående fel!?
Microsoft OLE DB Service Components error '80040e73'
Format of the initialization string does not conform to the OLE DB specification.
/aaa/ny/Insert.asp, line 96
Nedan följer min kod:
<%
' Connection string
Dim connStr
connStr = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source==" & Server.MapPath("dynamik.mdb")
' Recordset object
Dim rs
Set rs = Server.CreateObject("ADODB.Recordset")
Här är rad 96
rs.Open "MYIMAGES", connStr, 2, 2
' Adding data
rs.AddNew
rs("filename") = fileName
rs("filesize") = fileSize
rs("filedata").AppendChunk fileData
rs("contenttype") = contentType
rs.Update
rs.Close
Set rs = Nothing
If Err.number = 0 Then
Response.Write "Insertion into Database complete ...<br>"
Else
Response.Write "Could not insert into Database. Errors occured ...<br>"
End If
%>
Själv kan jag tänka mig att det är i följande rad vis del av problemet finns:
connStr = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source==" & Server.MapPath("dynamik.mdb")
Databasen ligger i d:/internet/domains/rolle.com/tmp
Någon som har någon idé?
Mvh
Simon
LarsGMedlem sedan dec. 200012 464 inlägg connStr = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("dynamik.mdb")
Det var ett = för mycket efter Data Source.
:r Hmmm... eehh, som vanligt :)
Dock fick jag ett fortsatt felmeddelande (precis som jag trodde)...
Microsoft JET Database Engine error '80004005'
Microsoft JET Database Engine error '80004005'
Could not find file 'D:\internet\domains\rolle.com\www\aaa\ny\dynamik.mdb'.
/aaa/ny/Insert.asp, line 96
Men det löste jag på egen hand :)
Tack så mycket!!!
Nytt problem...
Nu har jag fått in data i databasen (bilder och metadata om dessa). Men...
När jag la till två nya input-fält (text och rubrik) så får jag bara in fyrkanter i tabellen i databasen!?!?!
Alltså inte den text man skrivit in i fältet på ASP-sidan...
Följande kod använder jag mig av i insert.asp
<!--#include file="Loader.asp"-->
<%
Response.Buffer = True
' load object
Dim load
Set load = new Loader
' calling initialize method
load.initialize
' File binary data
Dim fileData
fileData = load.getFileData("file")
' File name
Dim fileName
fileName = LCase(load.getFileName("file"))
' File path
Dim filePath
filePath = load.getFilePath("file")
' File path complete
Dim filePathComplete
filePathComplete = load.getFilePathComplete("file")
' File size
Dim fileSize
fileSize = load.getFileSize("file")
' File size translated
Dim fileSizeTranslated
fileSizeTranslated = load.getFileSizeTranslated("file")
' Content Type
Dim contentType
contentType = load.getContentType("file")
' No. of Form elements
Dim countElements
countElements = load.Count
' Value of text input field "header"
Dim nameInput
nameInput = load.getValue("header")
' Value of text input field "text"
Dim textInput
textInput = load.getValue("text")
' destroying load object
Set load = Nothing
%>
<html>
<head>
<title>Inserts Images into Database</title>
<style>
body, input, td { font-family:verdana,arial; font-size:10pt; }
</style>
</head>
<body>
<p align="center">
<%= fileName %> data received ...<br>
<%
' Connection string
Dim connStr
connStr = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=d:\internet\domains\ngindesign.com\tmp\dynamik.mdb"
' Recordset object
Dim rs
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open "MYIMAGES", connStr, 2, 2
' Adding data
rs.AddNew
rs("filename") = fileName
rs("filesize") = fileSize
rs("filedata").AppendChunk fileData
rs("contenttype") = contentType
rs("header") = nameInput
rs("text") = textInput
rs.Update
rs.Close
Set rs = Nothing
If Err.number = 0 Then
Response.Write "Insertion into Database complete ...<br>"
Else
Response.Write "Could not insert into Database. Errors occured ...<br>"
End If
%>
Vad göra!?
Jag har provat att använda Response.Write på textInput och nameInput
och kan skriva ut dom på skrämen men när jag sedan tittar i databasen
så är det som sagt bara 1 fyrkant i själva tabellen.
!?
Hmm, dig tror jag att jag har snackat i telefon med! ;)
Hmm, dig tror jag att jag har snackat i telefon med!
Det kan nog stämma :) Incordia va!?