在VS2008和SQL2005中用C#语言编写的管理系统,可以上传图片但在浏览器中不显示,怎么回事?跪求答案~~
4个回答
展开全部
1、分析上传之后的图片文件是否成功。
2、检查显示图片的代码获取的地址是否为服务器端图片文件所在路径。
很有可能在浏览器展示图片的代码中,图片引用的路径不正确或者引用的地址是客户端地址等问题。
2、检查显示图片的代码获取的地址是否为服务器端图片文件所在路径。
很有可能在浏览器展示图片的代码中,图片引用的路径不正确或者引用的地址是客户端地址等问题。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
上传成功是把图片以二进制形式存到字节数组中了,要想显示出来应该就需要从数据库中把这个数组里的东西给读出来,代码
protected void Page_Load(object sender, EventArgs e)
{
string imgid = Request.QueryString["imgid"];
SqlConnection conn1 = new SqlConnection(ConfigurationManager.ConnectionStrings["connection"].ConnectionString);
SqlCommand cmd1 = new SqlCommand("select Image_Content from test where Image_ID="+imgid, conn1);
conn1.Open();
SqlDataReader sdr = cmd1.ExecuteReader();
if (sdr.Read())
{
Response.BinaryWrite((byte[])sdr["Image_Content"]);
}
Response.End();
conn1.Close();
}
这样应该就可以了,如果还是不行 你就应该看看是否真的上传成功了
protected void Page_Load(object sender, EventArgs e)
{
string imgid = Request.QueryString["imgid"];
SqlConnection conn1 = new SqlConnection(ConfigurationManager.ConnectionStrings["connection"].ConnectionString);
SqlCommand cmd1 = new SqlCommand("select Image_Content from test where Image_ID="+imgid, conn1);
conn1.Open();
SqlDataReader sdr = cmd1.ExecuteReader();
if (sdr.Read())
{
Response.BinaryWrite((byte[])sdr["Image_Content"]);
}
Response.End();
conn1.Close();
}
这样应该就可以了,如果还是不行 你就应该看看是否真的上传成功了
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
数据库要保存相对路径,图片保存时saveas(),里边的要用绝对路径
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
调试下,有好多种可能
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询