您现在的位置: 军旅同心 >> 读书赏析 >> 学习园地 >> 电脑网络 >> 技术文章 >> 文章正文
如何用SAFileUp上传文件?
作者:采集员 文章来源:来源于网络 点击数: 更新时间:2005-9-10 13:44:47
How Do I Upload Files to the database with SAFileUp?  
Don't do it! Use SAFileUp to upload the files to the server but do not store the image in the database. Instead store the path to the file. Better yet if the images will sit in the same folder just store the actual file name. Uploading the entire image to the database wastes too many resources. You need to upload the image in binary format which is slow. You also waste all that extra database space to store the image. Then you lose speed retrieving it.

These are the requirements for uploading files with SAFileup.
1] You need SAFileUp installed on the server. 2] You need Read, Write, and Change permissions on the directory you are going to save the pictures to. In my example I named the folder "Mypictures". Contact your ISP to set this up for you.
This is the web form - upload.asp. Notice the multipart/form-data. We are not just uploading text here. We are pulling files from the hard drive. Special rules and instructions apply. INPUT TYPE="file" gives us the browser button on the screen which lets us access the hard drive.
<TABLE><TR>
<TD valign='top'>
Category
</TD>
<TD>
<form enctype="multipart/form-data" method="post"  action="upload2.asp">
<INPUT TYPE="text"  NAME="categoryname">
</TD>
</TR>
<TR><TD align="right">
Alternate Text for banner:</TD>
<TD><INPUT TYPE="text"  NAME="alt">
</TD></TR>
<TR><TD align="right">
URL:  http:// </TD><TD><INPUT TYPE="text"  NAME="url">
</TD></TR>
<TR><TD align="right">
Get Add:</TD><TD><input type="file" name="f1"><br>
</TD></TR></TABLE>      
<BR><BR>
      <input type="submit"  NAME="submit"  value="submit">
</form>




The FORM Processing script - upload2.asp. Notice the upl.form("FORM_NAME"). you cannot use request.form to
retrieve form data when uploading files. You must reference the form elements with the File Upload object.
In this example it is "upl". <%
'You must have SAFileUp installed on the server
      Set upl = Server.CreateObject("SoftArtisans.FileUp")

      categoryname = trim(replace(upl.form("categoryname"),"'",""))
      alt = trim(replace(upl.form("alt"),"'",""))
      url = trim(replace(upl.form("url"),"'",""))

if categoryname = "" then
      response.write "You Must Enter a category name"
      response.end
End IF

NewFileName = Mid(upl.UserFilename, InstrRev(upl.UserFilename, "") + 1)

'Rename file if file name already exists
      upl.CreateNewFile = true

'Do not overwrite existing files
'The folder the pictures will be saved in need Read, Write
'and Change permissions.  In this example it is "MyPictures"
      upl.SaveAs "D:MyWebsMyPictures" & NewFileName

'Make sure we have the http:// extension
'remove it if it was already entered then re-add it
      path = NewFileName
      url = replace(url,"http://","")
      url = CStr("http://"&url)

'Save the image file name, not the actual image
      SQLin = "INSERT INTO MyPics (CategoryName,Alt,URL,Path)"
      SQLin = SQLin & "VALUES("&categoryname&",'"&alt&"','"&url&"','"&path&"')"
      DataConn.execute(SQLin)

response.write "File Uploaded"
      
%>  



Now retrieve the images from the database and display them wherever you want to use them. We will assume that we are grabbing categories from the query string and then pulling their images from the database. We know what folder we saved the pictures to therefore we can hardcode that information in. Now all we need
is the file name associated with the category. <%

catid = request.querystring("catid")

SQL = "Select Alt,URL,Path from Mypics where CategoryID = "&catid&""
set rs = DataConn.execute(SQL)

if not rs.eof then
  response.write "<IMG SRC='/MyPictures/" & rs("Path") & "'" & " ALT='" & rs("ALT") & "'>"
End iF
rs.close
set rs = nothing

%>



 
免责声明:作品版权归所属媒体与作者所有!!本站刊载此文不代表同意其说法或描述,仅为提供更多信息。如果您认为我们侵犯了您的版权,请告知!本站立即删除。有异议请联系我们。
文章录入:烟灰缸    责任编辑:烟灰缸 
网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
| 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 | 网站公告 | 管理登录 |