纳闷了..!~我具体代码是这样的:首先用uploade上传一个文件,然后判断这个图片的扩张名称是不是jpg,如果是,则在页面上有个图片空间.然后用这个空间显示出这张图片..由于上传的图片并不是一样的大小..所以,就决定先缩放..然后在这个图片上添加一个超连接..先给他看个小的..然后等他想看大的时候,点一下就可以了... 问题来了..!~先看小的是可以显示了..但是等我点超连接的时候...它就死在那..死活都不动了..!~闷的要死...
我把鼠标放在图片上的时候,底下状态栏显示的:file:///f:/路径...我看别人正常点的都是显示:http:/服务器/路径小弟的代码:
string fullname = this.fu.PostedFile.FileName.ToString();
if (fullname.Length > 0)
{
FileInfo f = new FileInfo(fullname);
string fname = f.Name.ToString();//获取原始文件名称
string f_ex = f.Extension.ToString().ToLower();//获取文件的类型
string length = f.Length.ToString();//获取文件的大小
string newname = DateTime.Now.Millisecond.ToString() + length + fname;//定义文件的新名称用于保存在服务器上
string savepath = Server.MapPath("annex");//文件存储的路径
fu.SaveAs(savepath + "\\" + newname);//将以新文件名保存到服务器上
string scf01x = msg.addscf(newname,f_ex, savepath, fname);
if (scf01x.Length > 0)
{
this.lblOldName.Text = fname;
this.t_newname.Text = scf01x;
this.lblMsg.Text = "----<font color=green>上传成功!</font>";
this.btnUpload.Enabled = false;
// this.btnClose.Disabled = false;
if (f_ex.Trim() == ".jpg")
{
//this.im_fujian.Visible = true;
strimg = savepath.Trim() + "\\" + newname.Trim();
//im_fujian.ImageUrl = savepath.Trim() + "\\" + newname.Trim();
}
}
else
{
this.lblMsg.Text = "----<font color=green>上传失败!</font>";
}
}
else
{
this.lblMsg.Text = "----<font color=red>请选择上传的附件!</font>";
}
scf01 = this.t_newname.Text;
oldname = this.lblOldName.Text;
我把鼠标放在图片上的时候,底下状态栏显示的:file:///f:/路径...我看别人正常点的都是显示:http:/服务器/路径小弟的代码:
string fullname = this.fu.PostedFile.FileName.ToString();
if (fullname.Length > 0)
{
FileInfo f = new FileInfo(fullname);
string fname = f.Name.ToString();//获取原始文件名称
string f_ex = f.Extension.ToString().ToLower();//获取文件的类型
string length = f.Length.ToString();//获取文件的大小
string newname = DateTime.Now.Millisecond.ToString() + length + fname;//定义文件的新名称用于保存在服务器上
string savepath = Server.MapPath("annex");//文件存储的路径
fu.SaveAs(savepath + "\\" + newname);//将以新文件名保存到服务器上
string scf01x = msg.addscf(newname,f_ex, savepath, fname);
if (scf01x.Length > 0)
{
this.lblOldName.Text = fname;
this.t_newname.Text = scf01x;
this.lblMsg.Text = "----<font color=green>上传成功!</font>";
this.btnUpload.Enabled = false;
// this.btnClose.Disabled = false;
if (f_ex.Trim() == ".jpg")
{
//this.im_fujian.Visible = true;
strimg = savepath.Trim() + "\\" + newname.Trim();
//im_fujian.ImageUrl = savepath.Trim() + "\\" + newname.Trim();
}
}
else
{
this.lblMsg.Text = "----<font color=green>上传失败!</font>";
}
}
else
{
this.lblMsg.Text = "----<font color=red>请选择上传的附件!</font>";
}
scf01 = this.t_newname.Text;
oldname = this.lblOldName.Text;
楼主你用的路径是保存文件的磁盘绝对路径。
改成strimg = "annex/" + newname.Trim();就可以了..!~ 谢谢各位..结贴散分..!~
首先应该在你项目下创建一个文件夹,图片上传到这个文件夹下,程序中取相对路径,获取图片文件夹的相对路径,代码如下,比如文件夹名称img,和你这个上传文件在同一目录下,获取路径为
string Savepath = Server.MapPath("img/");上一层目录下,
string Savepath = Server.MapPath("../img/");
图片上传时,要把图片名称存到数据库,读的时候还是取上传时候的相对路径(到文件夹的名字)+ 数据库中取出的文件的名字。项目部署到服务器后,这个文件夹要给读写权限,这时就是服务器的路径了。