webForumDet fria alternativet

Upload ?

3 svar · 269 visningar · startad av CatZ

CatZMedlem sedan jan. 20022 440 inlägg
#1

Alltså! Jag sitter och vill kunna ladda upp TILL en databas. Använder ASP och klarar det grundläggande. Jag kan till och med få ASP Upload att fungera men några saker jag behöver kunna göra klarar jag inte att klura ut själv.

Ska försöka förklara det:
1. Jag har 1 databas gjord i Access
2. Där har jag 2 tabeller en "Agenda" som håller information om tävlingar, när de ska spelas, ska ha en länk till den andra tabellen som heter "Upload" och som ska innehålla filerna som jag ska ladda upp. Det rör sig om html filer, och jag kan inte hitta något sätt att öppna filerna i explorer direkt utan det verkar som om man måste "ladda ner" filerna.

Hur tusan ska jag göra ? för jag måste ju ha båda tabellerna öppna rs1 och rs2 typ.
Så varje "tävlings id" ska bindas ihop med ett "fil id".

CatZMedlem sedan jan. 20022 440 inlägg
#2

Svara ? :)

Ingen som kan hjälpa till lite ?

mikulMedlem sedan aug. 20013 824 inlägg
#3

den här funkar för att ladda upp filer på servern och spara filnamnet i en databas....
jag vet inte om det va så du ville ha det...
jag hann inte läsa hela frågan...

<%
Dim strId
strId = (Session("id"))
	
Set Upload = Server.CreateObject("Persits.Upload.1")
Count = Upload.SaveVirtual("images") 
	
	Function namn(str)
		if isnull(str) or len(str) = 0 then 
			name = "" 
			return
		end if
		Dim pos
		str = Trim(str)
		pos = inStrRev(str,"\")
		namn = Right(str,Len(str)-pos)
	End Function

	Sub add(Fil)
		Dim Conn
		Set Conn = Server.Createobject("Adodb.Connection")
		Conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="& Server.MapPath("db.mdb")
		sql = "Insert into bilder(bild,artid) Values('" & Fil & "','"& strId &"')"
		Conn.Execute (sql)
		Conn.Close
		Set Conn = Nothing
	End Sub
	
	For Each File in Upload.Files
		add(namn(File.Path))
	Next 

	Response.write Count & " files uploaded."
If Upload.Expires <> CDate("9/9/9999") Then Response.Write "<HR>AspUpload expires on " & Upload.Expires
%>

/ Mikul

CatZMedlem sedan jan. 20022 440 inlägg
#4

Så långt kommer jag men inte längre!!

Så här ser uppladdningen ut och den fungerar bra, men jag vill lägga till en hyperlänk i tabellen "Mall och (Fältnamn) Resultat samtidigt som jag kör uppladdningen nedan till tabellen "Upload"

<%
		Select Case Request("cmd")

		Case ""

	%>
	<FORM METHOD="POST" ENCTYPE="multipart/form-data" ACTION="upload2.asp?cmd=upload">
		File:<BR><INPUT TYPE=FILE NAME="fil"><P>
	<INPUT TYPE=SUBMIT VALUE="Upload!">
	</FORM>

<%
		Case "upload"

Set Upload = Server.CreateObject("Persits.Upload")

Upload.SetMaxSize 100000, True

Count = Upload.Save

Set File = Upload.Files("fil")

If Not File Is Nothing Then

	Connect = "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath(".\databas\wbbas.mdb")

   Set rs = Server.CreateObject("adodb.recordset")

   'Optional: check whether this file already exists using MD5 hash
   Hash = File.MD5Hash
   rs.Open "SELECT * from Upload WHERE Hash='" & Hash & "'", Connect, 2, 3
   If Not rs.EOF Then
      Response.Write "This file already exists in the database."
      Response.End
   End If
   rs.Close

   ' Reopen recordset to insert file
   rs.Open "Upload", Connect, 2, 3

   rs.AddNew
   rs("UdBlob") = File.Binary
   rs("UdNamn") = File.FileName
   rs("UdStorlek") = File.Size
   rs("hash") = Hash
   rs.Update

   Response.Write "File saved."
Else
   Response.Write "File not selected."
End If

Länken kommer se ut så här:
<A HREF="download.asp?UdId=1">Resultat</A>

och använda sig av Scriptet download.asp som ser ut så här:

<%
Connect = "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath(".\databas\wbbas.mdb")
Set db = Server.CreateObject("ADODB.Connection")
db.Open Connect
SQL = "SELECT * FROM Upload where UdId = " & Request("UdId")
Set rs =db.Execute( SQL )
Response.ContentType = "application/octet-stream"
Response.AddHeader "Content-Disposition", "attachment;filename=" & Trim(rs("UdNamn"))
Response.AddHeader "Content-Length", rs("UdStorlek")
Response.BinaryWrite rs("UdBlob")
%>

Tabellen Mall har ju ett Id-Fältnamn och ett Resultat-Fältnamn som har Datatypen Hyperläng, hur lägger jag till en hyperlänk i tabell1 när jag laddar upp i Tabell2 ?

133 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)