各位达人,本人初学网页制作,帮我解决下ASP.NET图片的数据库的存储、页面的显示。准备给单位做个网站,但是对于图片、文件的存储、下载这块学的比较模糊,以至于网站就剩下这块没有处理完。
主要问题有:
1、如何将图片存储在数据库中(SQL 2005),而这些图片都是属于新闻表内容部分。
2、可以从新闻表中取出热点新闻的图片,并将其进行横向滚动显示,当点击某个图片的时候,进入图片所在新闻表进行新闻的浏览,最好还能说下图片轮值显示,实现的功能也是点击后进入下新闻页面。
3、后台文件的上传与前台的下载又是怎么实现的?
希望达人们能给出个完整的答案,不要网上复制粘贴,要有自己的语言,代码注释清楚,小弟感激不尽!再次谢过!
主要问题有:
1、如何将图片存储在数据库中(SQL 2005),而这些图片都是属于新闻表内容部分。
2、可以从新闻表中取出热点新闻的图片,并将其进行横向滚动显示,当点击某个图片的时候,进入图片所在新闻表进行新闻的浏览,最好还能说下图片轮值显示,实现的功能也是点击后进入下新闻页面。
3、后台文件的上传与前台的下载又是怎么实现的?
希望达人们能给出个完整的答案,不要网上复制粘贴,要有自己的语言,代码注释清楚,小弟感激不尽!再次谢过!
文本编辑器上传图片,获取图片路径保存
新闻图片切换,JS很多<a href
上传下载
FileInfo Fi = new FileInfo(filePath);
if (Fi.Exists)
{
FileStream fs = new FileStream(filePath, FileMode.Open);
byte[] bytes = new byte[(int)fs.Length];
fs.Read(bytes, 0, bytes.Length);
fs.Close();
Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition", "attachment; filename=1.excel");
Response.BinaryWrite(bytes);
Response.Flush();
Response.End();
}
string path = Server.MapPath("~/") + "";
Response.AppendHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(obj.Name, System.Text.Encoding.GetEncoding("utf-8")));
Response.ContentType = "application/octet-stream";
Response.WriteFile("" + path + "");
Response.End();
if (fileUpload.HasFile)
{
string savePath = Server.MapPath("~/upload/");
if(!System.IO.Directory.Exists(savePath))
{
System.IO.Directory.CreateDirectory(savePath);
}
savePath = savePath + "\\" + fileUpload.FileName;
fileUpload.SaveAs(savePath);
}
2.---前台代码
<div id="demo" style="overflow: hidden; width: 407px; margin-top: 5px; height: 64px;">
<div style="width: 716px; height: 62px;" id="demo1">
<asp:Repeater ID="Repeater2" runat="server">
<ItemTemplate>
<div style="margin: 0; padding: 0; float: left; width: 70px" id='<%#Eval("id") %>'>
<a href='Implementation_Plan.aspx?proId=<%#Eval("id") %>'>
<img alt="" src='/UploadFile/Picture/<%#Eval("images") %>' width="65px" height="75px" /></div>
</a></ItemTemplate>
</asp:Repeater>
</div>
</div>
---滚动js
<script type="text/javascript">
var speed=33;
demo1.innerHTML=demo1.innerHTML+demo1.innerHTML;
//向左
function Marquee()
{
if(demo1.offsetWidth/2-demo.scrollLeft<=63){//这里的33是随实际情况而定的,为了让调整位置时更柔和
demo.scrollLeft-=demo1.offsetWidth/2;
}else
{
demo.scrollLeft++;
}
}
var MyMar;
function doMoveToLeft()
{
MyMar=setInterval(Marquee,speed*2);
}
</script >3.上传可以用FileUpload或者IO都可以,下载可以直接访问要下载的文件地址,或者IO。