27. maj 2002 - 13:48Der er
15 kommentarer og 1 løsning
Aspupload
Hej
hvad er fejlen her??? det skal være persits upload. men ved ikke helt hvordan man ændrer det hele til det.
<% On Error Resume Next
username = Request.Cookies("username") ' Variables ' ********* Dim mySmartUpload Dim file Dim oConn Dim oRs Dim intCount Dim ConnectString, conn Dim ID intCount=0
' Open a recordset ' **************** strSQL = "SELECT FILENAME,FILE,username,ID FROM users WHERE username = '" & username & "'"
Set oRs = Server.CreateObject("ADODB.recordset") Set oRs.ActiveConnection = oConn oRs.Source = strSQL oRs.LockType = 3 oRs.Open
' Select each file ' **************** For each file In mySmartUpload.Files ' Only if the file exist ' ********************** If not file.IsMissing Then
' Add the current file in a DB field ' **********************************
oRs.Update
file.FileToField oRs.Fields("FILE") oRs("FILENAME") = username & file.FileName oRs.Update file.SaveAs("d:\home\lovefinddk\www\date\pictures\" & username & file.filename) intCount = intCount + 1 End If Next
' Display the number of files uploaded ' ************************************ Response.Write(intCount & " file(s) uploaded.<BR>")
' Destruction ' *********** oRs.Close oConn.Close Set oRs = Nothing Set oConn = Nothing
If Err Then Response.Write("<b>Your Picture is of the wrong kind of type please go back and correct the problem: Only .Jpg and .Gif is allowed !If your think its webmaster´s failure then mail him att: <a href='mailto:admin@lovefind.dk?subject=LOGIN FAILURE'><h3>WEBMASTER</h3> </b><br><a href='java script:self.history.go(-1)'><b><font color='red' font size='2'>Please go back and try again</b></font>" ) else Response.write ("<b><font size ='2' font color='blue'>Youe have uploaded your picture with success please click below to enter your profile</b></font><br><a href=profile.asp><b><font color='red' font size='2'>Back to profile :-)</b></font>")
Set Connect = Server.CreateObject("ADODB.Connection") Connect.Open "dsn_name"
Set Upload = Server.CreateObject("Persits.Upload.1") Upload.OverwriteFiles = False sti = Server.MapPath("./../images/dvd_specs/") & "\" Upload.Save sti
Navn = Upload.Form("navn") Beskrivelse = Upload.Form("beskrivelse")
Set Pic = Upload.Files("pic") If Pic is nothing Then Pic1 = "" Else Pic1 = Pic.ExtractFileName End if
sql = "INSERT INTO Lydspec (Navn,Beskrivelse,Pic) VALUES ("&"'"&Navn&"','"&Beskrivelse&"','"&Pic1&"')" Connect.Execute(sql)
' Connect to the DB ' ***************** Set oConn = Server.CreateObject("ADODB.Connection") pictures = Server.MapPath("date.mdb") oConn.Open "DBQ="& pictures &";Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;"
' Open a recordset ' **************** strSQL = "SELECT FILENAME,FILE,username,ID FROM users WHERE username = '" & username & "'" Set rs = oConn.Execute(strSQL)
Set Upload = Server.CreateObject("Persits.Upload.1") Upload.OverwriteFiles = False sti = Server.MapPath("./../images/dvd_specs/") & "\" Upload.Save sti
Set Pic = Upload.Files("pic") If Pic is nothing Then Pic1 = "" Else Pic1 = Pic.ExtractFileName End if
sql = "INSERT INTO tabel_navn (felt1,felt2,felt3) VALUES ("&"'"&var1&"','"&var2&"','"&Pic1&"')" oConn.Execute(sql)
var1 og var2 er blot variabelnavne hvor du ligger værdien fra det indtastede ind.
Pic og Pic1 er også variabler hvor du også lige tjekker om der er valgt et billede. Hvis ikke uploades der heller ikke noget.
Hvis ikke ovenstående er godt nok, så smid lige koden til din formular og skriv hvad din database hedder og hvilken tabel og hvilke felter der skal indsættes i/opdateres.
Så skal jeg lave en kode du bare kan kopiere ind i dit ASP-dokument.
Hvis jeg har forstået dig rigtigt har du en database der hedder date.mdb hvori der er en tabel der hedder users med feltet FILENAME?
I det tilfælde skal din ASP være som følger:
'opretter forbindelse til databasen Set Connect = Server.CreateObject("ADODB.Connection") pictures = Server.MapPath("date.mdb") Connect.Open "DBQ="& pictures &";Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;"
'definerer ASPUpload Set Upload = Server.CreateObject("Persits.Upload.1") Upload.OverwriteFiles = False 'stien til dine billeder sti = Server.MapPath("./mappenavn") & "\" Upload.Save sti
'denne del tjekker om der er valgt en fil og extracter filnavnet i databasen Set Pic = Upload.Files("file1") If Pic is nothing Then Pic1 = "" Else Pic1 = Pic.ExtractFileName End if
'opdatering af tabellen sql = "UPDATE users SET FILENAME='"&Pic1&"' WHERE username='"&username&"'" Connect.Execute(sql)
Den kode du startede med at vise da du oprettede spørgsmålet er ALT for omstændig. Den kode jeg lige har givet dig gør nøjagtigt det samme - fortsætter hvis ikke der er et billede (On error resume next).
Så se bort fra det du startede med og brug min kode istedet for.
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.