最近写了一个web页,用于存储,显示用户的信息,其中有用户的图片信息要求保存并且可以显示和修改
我的解决办法是:
1:要保存图片首先要求图片必须能够上传到服务,因为只有图片在服务器端才可以把图片保存到数据库,这里我们的后台数据库是sql server.
2:为图片控件image指定默认图片路径,为图片控件image添加事件onclick,允许更改图片.
3:浏览用户的信息包括用户的照片信息.
这里我只写一些必要的技术:
1:添加onclick事件
在page_load中添加下列代码
image1.attribute.add("onclick","imageup()");
在前台填写java脚本
<script language=''javascript">
function imageup()
{
window.open("imageup.aspx");
}
</script>
2:编写imageup.aspx文件
添加上传控件,两个button控件其中一个用于完成上传操作,另一个button 用于关闭窗口,并将信息回传给image的src
上传按钮的关键语句就一个PostedFile.SaveAs(path);
不多说了,关键是回传的信息
关闭的butten按钮是
<input id="Button3" type="button" value="关闭" οnclick="fclose();"/>
添加java脚本
function fclose()
{
window.opener.document.getElementById("Image1").src = "Picture//"+document.all.Hidden1.value;
window.close();
}
3:下边讨论的是真的要保存图片的数据,还是简单的保存图片的地址呢
先说简单的:因为我们已经将图片上传到了服务器,所以我们就可以只是保存该人的图片路径便能够实现保存/修改/浏览的功能了,只不过数据库中并没有图片的数据,只有一个图片的路径.这样作的好处是简单且功能也可以实现省去了保存图片到数据库的操作,缺点也是很明显的使得服务器端要给出很大的空间来存取图片.
复杂的方法是读写图片到数据库并且将产生的图片保存在服务器端,主意的是在写图片之后要将写完的图片删除以节约服务器的空间,具体的读写操作在我以前的文章中有些.可以参阅!!!