webForumDet fria alternativet

ASPUpload

11 svar · 348 visningar · startad av CatZ

CatZMedlem sedan jan. 20022 440 inlägg
#1

Följande kod vill inte fugera med JET

	Set Upload = Server.CreateObject("Persits.Upload")
	Upload.SetMaxSize 100000, True
	Count = Upload.Save("g:\home\lexolar.se\users\wexiobridgen.com\databas")

	Set File = Upload.Files("FResultat.htm")
	If Not File Is Nothing Then
		SQL = "UPDATE Spelprogram " _
		& " SET FBlob=?, " _
		& " FNamn = '" & File.Name & "', " _ 
		& " SmDatum = #" & Replace(Upload.Form("SmDatum"), "'", "''") & "#," _
		& " SmJour = '" & Replace(Upload.Form("SmJour"), "'", "''") & "', "_
		& " SmForm = '" & Replace(Upload.Form("SmForm"), "'", "''") & "', " _
		& " SmAnm = '" & Replace(Upload.Form("SmAnm"), "'", "''") & "', " _
		& " SmAnsv = '" & Replace(Upload.Form("SmAnsv"), "'", "''") & "', " _
		& " FStor = '" & File.Size & "' " _
		& " WHERE SmId= " & Request.Querystring("id") & " AND SmTyp = '" & Request.Querystring("typ")
		'response.write sql 
		[b]File.ToDatabase dbCom, SQL[/b] <-- Rad 234
		File.Delete
		Response.Redirect("spelprogram.asp?typ=" & typ & " ")

Det ger följande felmeddelande:
*Persits.Upload.1 error '800a0018'

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

/spelprogram.asp, line 234*

Och ser ut såhär när jag skriver ut response.write sql:

UPDATE Spelprogram SET FBlob=?, FNamn = 'FResultat.htm', SmDatum = #2002-09-17#, SmJour = 'Ingrid Christersson', SmForm = 'Barometer', SmAnm = '', SmAnsv = 'Ulrich Falk', SmAnsv = 'Ulrich Falk', FStor = '196' WHERE SmId= 165 AND SmTyp = 'TrappanTis

solbulleMedlem sedan mars 20015 287 inlägg
#2

Och dbCom innehåller? (Rättstavat? Det ska inte stå tex dbConn?)

CatZMedlem sedan jan. 20022 440 inlägg
#3

dbCom = databasCommunication

LarsGMedlem sedan dec. 200012 464 inlägg
#4

Hur har du skapat kommandoobjektet? Har du satt activeConnection osv?

CatZMedlem sedan jan. 20022 440 inlägg
#5

Hmm nu fattar jag som så ofta annars ingenting ;)

LarsGMedlem sedan dec. 200012 464 inlägg
#6

dbCom borde vara ett commandobject (adodb.command). Hur har det skapats?

Hur är det tänkt att metoden File.ToDatabase skall fungera? Har du någon dokumentation om den?

CatZMedlem sedan jan. 20022 440 inlägg
#7

dbCom är bara namnet på min conn till databasen,

För att ni ska bättre kunna förstå vad det handlar om bifogar jag Persits egna exempel

Set Upload = Server.CreateObject("Persits.Upload")
' Capture files
Upload.Save "c:\upload"

' Obtain file object
Set File = Upload.Files("THEFILE")

If Not File Is Nothing Then
  ' Build ODBC connection string
  Connect = "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath(".\aspupload.mdb")

  ' If you use SQL Server, the connecton string must look as follows:
  ' Connect = "Driver=SQL Server;Server=MYSERVER;UID=sa;PWD=xxxxxxxxx"

  ' Build SQL INSERT statement
  SQL = "INSERT INTO MYIMAGES(image_blob, filename, description, filesize) VALUES(?, '"
  SQL = SQL & File.Filename & "', '"
  SQL = SQL & Replace(Upload.Form("DESCR"), "'", "''") & "', "
  SQL = SQL & File.Size & ")"

  ' Save to database
  File.ToDatabase Connect, SQL
  Response.Write "File saved."
Else
  Response.Write "File not selected."
End If

Jag bytte alltså ut den icke fungerande Connect saken mot min inkluderade dbCom connection istället.

LarsGMedlem sedan dec. 200012 464 inlägg
#8

Vad är dbCom, en sträng eller ett connectionobjekt?

Som dom använder det så skall man bara skicka en connectionsträng och inte ett connectionobjekt.

CatZMedlem sedan jan. 20022 440 inlägg
#9

ok får försöka med det då

CatZMedlem sedan jan. 20022 440 inlägg
#10

Hmm nu vet jag varför det inte fungerade med Access drivern... jag har ju lösenordsskydddat databasen hehe

CatZMedlem sedan jan. 20022 440 inlägg
#11

hur gör jag om följande så att det fungerar med Access Driver istället ?

dbCom.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
           "Data Source=" & Server.MapPath("\") & "\databasen.mdb;" &_
           "Jet OLEDB:Database Password=lösenord", _
           "användare", "användarlösenord"

Alltså jag behöver ange DATABAS LÖSENORDET för att komma åt databasen, jag hittade ingen info om det någonstanns.....

CatZMedlem sedan jan. 20022 440 inlägg
#12

vad betyder nu detta då?

Persits.Upload.1 error '800a0018' 

[Microsoft][ODBC Microsoft Access Driver]General error Unable to 
open registry key 'Temporary (volatile) Jet DSN for process 0x500
Thread 0x75c DBC 0x14c04024 Jet'. 

/spelprogram.asp, line 235
137 ms totalt · 3 externa anrop · v20260731065814-full.0e50b1ef
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)