急!!!FileUpload上传图片,在另一个页面用Image显示相应的图片
我用FileUpload控件将图片上传到了网站根目录下的文件夹image中,代码如下:filename=FileUpload1.FileName.ToString();s...
我用FileUpload控件将图片上传到了网站根目录下的文件夹image中,代码如下: filename = FileUpload1.FileName.ToString();
string filepath = Server.MapPath("image");
FileUpload1.SaveAs(filepath + "\\" + filename);
这段代码已成功实现上传将图片保存在了image中
但我现在想在另外一个页面将相应的图片用Image显示出来,应该怎么做呢?
具体页面代码如下:
第一个页面(FileUpload上传图片页面):
protected void Button1_Click(object sender, EventArgs e)
{
string name = TextBox1.Text.ToString();
Session["name"] = name;
string no = TextBox2.Text.ToString();
string fbt= TextBox3.Text.ToString();
string jyt = TextBox4.Text.ToString();
string hospital = TextBox5.Text.ToString();
string sick = TextBox6.Text.ToString();
string wellt = TextBox7.Text.ToString();
string filename;
filename = FileUpload1.FileName.ToString();
string filepath = Server.MapPath("image");
FileUpload1.SaveAs(filepath + "\\" + filename);
string sql = "insert into file (姓名,档案编号,发病时间,就医时间,就诊医院,确诊病因,治愈时间) values ('" + name + "','" + no + "','" + fbt + "','" + jyt + "','" + hospital + "','" + sick + "','" + wellt + "')";
dataOperate.execSQL(sql);
Response.Redirect("dangan2.aspx");
}
第二个页面(Image显示相应的图片页面):
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
if (Session["name"] != null)
{
string Sql = "select * from file where 姓名='" + Session["name"] + "'";
string Sql1 = "select * from file where 档案编号='" + Session["no"] + "'";
string Sql2 = "select * from file where 发病时间='" + Session["fbt"] + "'";
string Sql3 = "select * from file where 就医时间='" + Session["jyt"] + "'";
string Sql4 = "select * from file where 就诊医院='" + Session["hospital"] + "'";
string Sql5 = "select * from file where 确诊病因='" + Session["sick"] + "'";
string Sql6 = "select * from file where 治愈时间='" + Session["wellt"] + "'";
OleDbDataReader sdr = dataOperate.getRow(Sql);
sdr.Read();
Label1.Text = sdr["姓名"].ToString();
Label2.Text = sdr["档案编号"].ToString();
Label3.Text = sdr["发病时间"].ToString();
Label4.Text = sdr["就医时间"].ToString();
Label5.Text = sdr["就诊医院"].ToString();
Label6.Text = sdr["确诊病因"].ToString();
Label7.Text = sdr["治愈时间"].ToString();
this.Image1.ImageUrl = "/~image/" + sdr["档案编号"].ToString();
}
第一个页面是上传图片及记录信息,第二个页面是要将信息及相应图片显示出来,其他都已实现,就是无法显示相应图片。请各位高手帮帮忙啊~~~
您好!我用了您教的第二种方法,图片名称保存在了数据库中,可是图片还是显示不出来。 展开
string filepath = Server.MapPath("image");
FileUpload1.SaveAs(filepath + "\\" + filename);
这段代码已成功实现上传将图片保存在了image中
但我现在想在另外一个页面将相应的图片用Image显示出来,应该怎么做呢?
具体页面代码如下:
第一个页面(FileUpload上传图片页面):
protected void Button1_Click(object sender, EventArgs e)
{
string name = TextBox1.Text.ToString();
Session["name"] = name;
string no = TextBox2.Text.ToString();
string fbt= TextBox3.Text.ToString();
string jyt = TextBox4.Text.ToString();
string hospital = TextBox5.Text.ToString();
string sick = TextBox6.Text.ToString();
string wellt = TextBox7.Text.ToString();
string filename;
filename = FileUpload1.FileName.ToString();
string filepath = Server.MapPath("image");
FileUpload1.SaveAs(filepath + "\\" + filename);
string sql = "insert into file (姓名,档案编号,发病时间,就医时间,就诊医院,确诊病因,治愈时间) values ('" + name + "','" + no + "','" + fbt + "','" + jyt + "','" + hospital + "','" + sick + "','" + wellt + "')";
dataOperate.execSQL(sql);
Response.Redirect("dangan2.aspx");
}
第二个页面(Image显示相应的图片页面):
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
if (Session["name"] != null)
{
string Sql = "select * from file where 姓名='" + Session["name"] + "'";
string Sql1 = "select * from file where 档案编号='" + Session["no"] + "'";
string Sql2 = "select * from file where 发病时间='" + Session["fbt"] + "'";
string Sql3 = "select * from file where 就医时间='" + Session["jyt"] + "'";
string Sql4 = "select * from file where 就诊医院='" + Session["hospital"] + "'";
string Sql5 = "select * from file where 确诊病因='" + Session["sick"] + "'";
string Sql6 = "select * from file where 治愈时间='" + Session["wellt"] + "'";
OleDbDataReader sdr = dataOperate.getRow(Sql);
sdr.Read();
Label1.Text = sdr["姓名"].ToString();
Label2.Text = sdr["档案编号"].ToString();
Label3.Text = sdr["发病时间"].ToString();
Label4.Text = sdr["就医时间"].ToString();
Label5.Text = sdr["就诊医院"].ToString();
Label6.Text = sdr["确诊病因"].ToString();
Label7.Text = sdr["治愈时间"].ToString();
this.Image1.ImageUrl = "/~image/" + sdr["档案编号"].ToString();
}
第一个页面是上传图片及记录信息,第二个页面是要将信息及相应图片显示出来,其他都已实现,就是无法显示相应图片。请各位高手帮帮忙啊~~~
您好!我用了您教的第二种方法,图片名称保存在了数据库中,可是图片还是显示不出来。 展开
1个回答
展开全部
这样写肯定有问题,上传的文件名和显示是的文件名不一样。以下两种解决办法
1.在上传页面上传成功后把上传的文件名称重命名为 sdr["档案编号"] + '.' + 文件类型 (例如:0001.jpg)
在显示页面修改成
this.Image1.ImageUrl = "/~image/" + sdr["档案编号"].ToString() + '.'+ 文件类型;
这样要求的是上传的文件重名成同一类型的,否则无法对应,就有可能显示不出来。
2.在上传页面上传成功后把上传的文件名保存在数据库中
string sql = "insert into file (姓名,档案编号,发病时间,就医时间,就诊医院,确诊病因,治愈时间,图片名称) values ('" + name + "','" + no + "','" + fbt + "','" + jyt + "','" + hospital + "','" + sick + "','" + wellt + "','" + filename + "')";
在显示页面从数据库取出图片名称
this.Image1.ImageUrl = "/~image/" + sdr["图片名称"].ToString();
就能显示了
你把保存的一条记录发上来看看。
要确保上传路径和显示路径是同一个目录
还有就是你可以在浏览器中查看显示页面的html代码看看image的路径是什么,把路径复制,然后新打开个浏览器直接粘贴看看能不能显示,不能显示,再自己改改。其实只要保存到数据库的文件名和上传的一样,就确定是路径的问题了
1.在上传页面上传成功后把上传的文件名称重命名为 sdr["档案编号"] + '.' + 文件类型 (例如:0001.jpg)
在显示页面修改成
this.Image1.ImageUrl = "/~image/" + sdr["档案编号"].ToString() + '.'+ 文件类型;
这样要求的是上传的文件重名成同一类型的,否则无法对应,就有可能显示不出来。
2.在上传页面上传成功后把上传的文件名保存在数据库中
string sql = "insert into file (姓名,档案编号,发病时间,就医时间,就诊医院,确诊病因,治愈时间,图片名称) values ('" + name + "','" + no + "','" + fbt + "','" + jyt + "','" + hospital + "','" + sick + "','" + wellt + "','" + filename + "')";
在显示页面从数据库取出图片名称
this.Image1.ImageUrl = "/~image/" + sdr["图片名称"].ToString();
就能显示了
你把保存的一条记录发上来看看。
要确保上传路径和显示路径是同一个目录
还有就是你可以在浏览器中查看显示页面的html代码看看image的路径是什么,把路径复制,然后新打开个浏览器直接粘贴看看能不能显示,不能显示,再自己改改。其实只要保存到数据库的文件名和上传的一样,就确定是路径的问题了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询