注册 登录
编程论坛 ASP.NET技术论坛

求助!!怎样把照片保存在数据库中?

水晶之恋 发布于 2007-05-09 18:02, 1631 次点击
员工信息中每个都有照片
我怎样才能把照片保存在数据库中,然后在更新的页面中显示啊?
13 回复
#2
冰镇柠檬汁儿2007-05-09 18:07
把图片上传到服务器,数据库中保存图片的路径,就可以了
#3
水晶之恋2007-05-09 18:09
能更详细点吗?
#4
冰镇柠檬汁儿2007-05-09 18:18
还能怎么详细呢,首先要知道怎么做上传图片
#5
水晶之恋2007-05-09 18:20

我从来都没有弄过啊

#6
独孤幽灵2007-05-10 23:29
高手是给你指点的

具体代码是自己写的

这个论坛人气虽好

但是没几个真正给你解决问题的人



#7
zhishiouran2007-05-11 10:26
你可以上网查上传图片的一些代码呀,有很多的
#8
冰镇柠檬汁儿2007-05-11 10:44
以下是引用独孤幽灵在2007-5-10 23:29:32的发言:
高手是给你指点的
具体代码是自己写的
这个论坛人气虽好
但是没几个真正给你解决问题的人

知道就好,在论坛上不是什么都能说的清楚的

#9
bygg2007-05-11 10:48
要是什么都让别人给你做出来,那你不觉学什么呢??
自己动手才能学到真正的知识.
#10
cyyu_ryh2007-05-11 11:44

用FileUpload上传控件把图片上传到服务器的某个文件夹下,同时取文件名;再把图片文件路径(相对)保存到数据库就可以了.

#11
beniao2007-05-11 18:17
以下是引用bygg在2007-5-11 10:48:24的发言:
要是什么都让别人给你做出来,那你不觉学什么呢??
自己动手才能学到真正的知识.

哎,你们虽然都是高手,但是也不能这样说别人撒,毕竟别人都还是新手豆吗,黑多的知识都还不是很清楚,所以你不能说出具体的做法,但是你可以一条一条的把设计过程,设计思想给她说清楚撒,楼主,鄙人不才在这里发几句杂言,也许对你正在设计的项目中有用:
要实现员工的图片可以随他的资料一起,且你的项目里要有一个文件夹来存储图片(pic),在数据库的这要一个字段来存储这个图片的位置(如:./web/pic/001.jpg),在做程序的时候只需要根据相应的条件去读取数据库里字段存储的图片在项目里的位置就可以(也就是图片在字段下的值),比如上面的:web/pic/001.jpg,读取到后把他负给图片控件的URL就可以了.

接下来我把关于上传图片的程序大概给你分析下,希望可以帮助到你.

#12
beniao2007-05-11 18:46
以下是引用cyyu_ryh在2007-5-11 11:44:19的发言:

用FileUpload上传控件把图片上传到服务器的某个文件夹下,同时取文件名;再把图片文件路径(相对)保存到数据库就可以了.

这个朋友说得不错.用FileUpload控件可以实现选择要上传的文件.
1.在使用FileUpload控件的时候需要的名字空间:
using System.Web.UI;
using System.Web.UI.WebControls;
//在VS2003里FileUpload是客户控件需转换为服务端控件 别告诉我你个知道怎么转换哈,右键--做为服务器控件使用
using System.Web.UI.HtmlControls;

2.对文件名的处理过程:(upfile为上传控件名)
String fileName = upfile.PostedFile.FileName.Substring(upfile.PostedFile.FileName.LastIndexOf("\\"),
upfile.PostedFile.FileName.Length - upfile.PostedFile.FileName.LastIndexOf("\\"));
3.对将要上传的文件命名,比如一当前时间的年月日时分秒......来命名.(这样命名的好处我就不多说了,哈哈)
String fileTime = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString()
+ DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString()
+ DateTime.Now.Second.ToString() + DateTime.Now.Minute.ToString()
+ DateTime.Now.Millisecond.ToString();
4.上面把要上传的文件名已经取出了,现在取出文件的扩展名:
String fileName = fileName.Substring(fileName.IndexOf("."),fileName.Length - fileName.IndexOf("."));
5.给文件命以新的文件名:当前时间+扩展名:
fileName = "\\" + fileTime + fileName;
6.上传文件,并向数据库里插入一条信息,要是修改用户图片则是更新,这个都是可以想到的,就不多说,这里主要说
插入记录:(比如保存在项目下picture下的UpLoads文件夹里)
upfile.PostedFile.SaveAs(Server.MapPath(Request.ApplicationPath) + "\\picture\\UpLoads" + fileName);
//收集要上传的图片的相应信息;
string name = this.UserName.Text.Trim();//这个名字代表员工姓名
string sex = this.UserSex.Text.Trim();
string url = \\picture\\UpLoads" + fileName;//数据库里存储上传图片的位置,url也就是图片的完整路径
string SQLstr = "insert into userinfo (........) values (.........)";
然后执行这条语句就OK!
^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.^^.
7.完了.

#13
flyboatzgc2007-05-11 21:15
如果简单点可以在数据库里保存图片的路径.在显示时再把数据库里的图片路径赋给图片控件

还有种更好的方法就是用二进制的方法把图片存入数据库里(去看看输入输出流内容)
#14
水晶之恋2007-05-12 13:00
谢谢beniao!!!
1