ASP.net图片和其他信息上传到sql数据库,在另外一个页面用gridview和image控件显示出来
我试了好多网络上的代码,都不成功,自己很迷惑,希望高手指点下图片已经可以上传到项目文件夹,文件的名称也已经存放到数据库表里面,先在就是没法把图片用image控件显示出来,...
我试了好多网络上的代码,都不成功,自己很迷惑,希望高手指点下
图片已经可以上传到项目文件夹,文件的名称也已经存放到数据库表里面,先在就是没法把图片用image控件显示出来,我把上传和存数据库的代码贴上来,希望能解决图片显示的问题~~谢谢咯!!!protected void btnUpPic_Click(object sender, EventArgs e)
{
string fullName = this.opanFile.Value;
string picName = fullName.Substring(fullName.LastIndexOf('\\') + 1);
string picType = fullName.Substring(fullName.LastIndexOf('.') + 1);
if (picType != "jpg" && picType != "gif" && picType != "bmp")
{
}
else
{
this.opanFile.PostedFile.SaveAs(Server.MapPath("img") + "\\" + picName);
AddPic(picName);
Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "OK", "<script>alert('上传图片成功!')</script>");
}
} 展开
图片已经可以上传到项目文件夹,文件的名称也已经存放到数据库表里面,先在就是没法把图片用image控件显示出来,我把上传和存数据库的代码贴上来,希望能解决图片显示的问题~~谢谢咯!!!protected void btnUpPic_Click(object sender, EventArgs e)
{
string fullName = this.opanFile.Value;
string picName = fullName.Substring(fullName.LastIndexOf('\\') + 1);
string picType = fullName.Substring(fullName.LastIndexOf('.') + 1);
if (picType != "jpg" && picType != "gif" && picType != "bmp")
{
}
else
{
this.opanFile.PostedFile.SaveAs(Server.MapPath("img") + "\\" + picName);
AddPic(picName);
Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "OK", "<script>alert('上传图片成功!')</script>");
}
} 展开
5个回答
展开全部
1.上传文件至文件夹,数据库存储路径
2.图片以二进制的形式存储进数据库
不知楼主想要实现哪种?
============================以下为补充=============================
=====================================上传==========================
/// <summary>
/// 获取图片名称
/// </summary>
private string GetimName()
{
if (FileUpload1.HasFile)
{
string fullFileName = this.FileUpload1.PostedFile.FileName; //获取上传文件的全名
string type = fullFileName.Substring(fullFileName.LastIndexOf(".") + 1); //获取上传文件的类型
if (type == "jpg" || type == "jpeg" || type == "gif" || type == "png") //判断文件的类型
{
string name;
Random r = new Random(System.Environment.TickCount);
int i = r.Next(100000, 999999);
name = (DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString() + i.ToString()) +"."+ type.ToString();
name = System.IO.Path.GetFileName(name);
FileUpload1.PostedFile.SaveAs(Server.MapPath("..\\..\\App_Themes\\ADim\\" + name));
return name;
}
else
{
ShowMess.Show("图片类型不符合要求,请上传jpg,jpeg,gif或者png格式的图片");
return "0";
}
}
else
{
ShowMess.Show("请选择需要上传的图片");
return "0";
}
}
=================================以下为绑定======================
<asp:DataList ID="DataList3" runat="server" DataKeyField="id"
DataSourceID="SqlDataSource1" ShowFooter="False"
ShowHeader="False" RepeatColumns="5" Width="100%">
<ItemTemplate>
<asp:Image ID="ImageButton1" ToolTip='<%# Eval("companyName", "{0}")%>' runat="server" Width="124px" Height="62px" ImageUrl='<%# Eval("logoName", "../App_ph/ADim/{0}")%>' /><%# Eval("companyName", "{0}") %> </ItemTemplate>
<ItemStyle HorizontalAlign="Center" VerticalAlign="Bottom" Font-Bold="False"
Font-Italic="False" Font-Overline="False" Font-Strikeout="False"
Font-Underline="False" Wrap="False" />
</asp:DataList>
2.图片以二进制的形式存储进数据库
不知楼主想要实现哪种?
============================以下为补充=============================
=====================================上传==========================
/// <summary>
/// 获取图片名称
/// </summary>
private string GetimName()
{
if (FileUpload1.HasFile)
{
string fullFileName = this.FileUpload1.PostedFile.FileName; //获取上传文件的全名
string type = fullFileName.Substring(fullFileName.LastIndexOf(".") + 1); //获取上传文件的类型
if (type == "jpg" || type == "jpeg" || type == "gif" || type == "png") //判断文件的类型
{
string name;
Random r = new Random(System.Environment.TickCount);
int i = r.Next(100000, 999999);
name = (DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString() + i.ToString()) +"."+ type.ToString();
name = System.IO.Path.GetFileName(name);
FileUpload1.PostedFile.SaveAs(Server.MapPath("..\\..\\App_Themes\\ADim\\" + name));
return name;
}
else
{
ShowMess.Show("图片类型不符合要求,请上传jpg,jpeg,gif或者png格式的图片");
return "0";
}
}
else
{
ShowMess.Show("请选择需要上传的图片");
return "0";
}
}
=================================以下为绑定======================
<asp:DataList ID="DataList3" runat="server" DataKeyField="id"
DataSourceID="SqlDataSource1" ShowFooter="False"
ShowHeader="False" RepeatColumns="5" Width="100%">
<ItemTemplate>
<asp:Image ID="ImageButton1" ToolTip='<%# Eval("companyName", "{0}")%>' runat="server" Width="124px" Height="62px" ImageUrl='<%# Eval("logoName", "../App_ph/ADim/{0}")%>' /><%# Eval("companyName", "{0}") %> </ItemTemplate>
<ItemStyle HorizontalAlign="Center" VerticalAlign="Bottom" Font-Bold="False"
Font-Italic="False" Font-Overline="False" Font-Strikeout="False"
Font-Underline="False" Wrap="False" />
</asp:DataList>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
const string uploadFile = "upload\\ProductKind\\"; //定义文件夹
string fullPath = this.Request.PhysicalApplicationPath + uploadFile; //获取uploadFile这个文件夹的路径
const string uploadType = ".gif,.jpg"; //上传文件的类型
fileoldname = this.txt_UploadImage1.FileName; //上传文件的名字
fileExtension = Path.GetExtension(fileoldname).ToLower(); //上传文件的后缀名
this.txt_UploadImage1.PostedFile.SaveAs(fullPath + "\\" + newName1);
string fullPath = this.Request.PhysicalApplicationPath + uploadFile; //获取uploadFile这个文件夹的路径
const string uploadType = ".gif,.jpg"; //上传文件的类型
fileoldname = this.txt_UploadImage1.FileName; //上传文件的名字
fileExtension = Path.GetExtension(fileoldname).ToLower(); //上传文件的后缀名
this.txt_UploadImage1.PostedFile.SaveAs(fullPath + "\\" + newName1);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
绑定控件就好了,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果你的gridview名字叫做gv,那你就可以这么写。
(别忘了引用:using
system.date.sqlclient)把下面的代码写在你的方法里:
sqlconnection
con
=
new
sqlconnection("data
source=.;initial
catalog=computerexamination;integrated
security=true");
//这里是连接数据库,用的是windows身份验证,要保证你的数据库在打开时是本地数据库,即在连接数据库时‘服务器名称’选项中填入localhost要能成功连接数据库。
sqlcommand
cmd
=
new
sqlcommand("select
*
from
tb_files
where
filenum='"+textbox1.text+"'",
con);
//这里是对数据库下发命令,选择的记录是你在前台文本框里输入的值
con.open();
//打开数据库
sqldataadapter
sda
=
new
sqldataadapter(cmd);
//执行命令
dataset
ds
=
new
dataset();
sda.fill(ds,"info");
con.close();
gvview.datasource
=
ds.tables[0];
gvview.databind();
//将所查到的数据绑定到你的gridview上
(别忘了引用:using
system.date.sqlclient)把下面的代码写在你的方法里:
sqlconnection
con
=
new
sqlconnection("data
source=.;initial
catalog=computerexamination;integrated
security=true");
//这里是连接数据库,用的是windows身份验证,要保证你的数据库在打开时是本地数据库,即在连接数据库时‘服务器名称’选项中填入localhost要能成功连接数据库。
sqlcommand
cmd
=
new
sqlcommand("select
*
from
tb_files
where
filenum='"+textbox1.text+"'",
con);
//这里是对数据库下发命令,选择的记录是你在前台文本框里输入的值
con.open();
//打开数据库
sqldataadapter
sda
=
new
sqldataadapter(cmd);
//执行命令
dataset
ds
=
new
dataset();
sda.fill(ds,"info");
con.close();
gvview.datasource
=
ds.tables[0];
gvview.databind();
//将所查到的数据绑定到你的gridview上
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询