protected void btnUpdaload_Click(object sender, EventArgs e)
{
if (imageUpload.HasFile)
{
string extension = Path.GetExtension(imageUpload.FileName);
if (SafeTool.CheckAllowFile(extension))
{
string path = Server.MapPath("~/Images/FlashImages");
string fileName = DateTime.Now.ToString("yyyyMMddHHmmss") + extension;
imageUpload.PostedFile.SaveAs(path + "\\" + fileName); Uri uri = Request.Url;
//注意,这里数据库里保存的是相对地址,显示给用户的是绝对URL,这样即使域名或者路径发生相对更改,也不会影响使用
//txtLinkUrl.Text = string.Format("{0}://{1}/download/{2}", uri.Scheme, uri.Authority, fileName);//显示给用户的地址
//hfPath.Value = string.Format("download/{0}", fileName);//数据库中保存的地址
txtImagePath.Text = string.Format("Images/FlashImages/{0}", fileName);
}
else
{
JScript.Alert("你上传的文件格式不符合要求!");
}
}
else
{
JScript.Alert("请选择一个文件上传!");
}
}
"images/a.jpg"是相对路径,相对路径是以"/"作为路径分隔符的。//以物理路径保存文件代码
string path = Server.MapPath("~/Images/FlashImages");
string fileName = DateTime.Now.ToString("yyyyMMddHHmmss") + extension;
imageUpload.PostedFile.SaveAs(path + "\\" + fileName);
//将物理路径转换成相对路径的代码,写入数据库的就是相对路径
txtImagePath.Text = string.Format("Images/FlashImages/{0}", fileName);
postFile.SaveAs(strUrl);
string strSql = "Insert into z_booksInfo(books_img,Goods_ID) values ('" + strUrl + "','0')";
webService.ExcuteSql(strSql);
1.你要保证你的上传路径是否正确,在你读的那个位置也要与你的上面路径地址符合
2.我认为你写的上传估计没有错误,在于你显示的时候路径出错,你可以调试跟踪下
<asp:Image ID="Image1" runat="server" ImageUrl=' <%# Eval("Goods_img") %>' /> 这句Eval("Goods_img") ,首先要区别绝对地址和相对地址,你用的相对地址的话很容易出错,这个页面和你图片的保存地址估计不一样
HttpPostedFile postFile = this.fuImage.PostedFile;
int intFileLength = postFile.ContentLength;
string strImgName = postFile.FileName;
int i = strImgName.LastIndexOf(".");
string strExtension = strImgName.Substring(i);
DateTime now = DateTime.Now;
string newname=now.DayOfYear.ToString()+postFile.ContentLength.ToString();
string strUrl = Server.MapPath("~\\image\\"+newname+strExtension);
postFile.SaveAs(strUrl);
strUrl = "~/image/"+newname+strExtension; //加这个再试试?
{
string gid;
DataTable dtTable;
Hashtable hashCar;
string strSql;
WebService webService = new WebService();
protected void Page_Load(object sender, EventArgs e)
{
gid = Request.QueryString["gid"].ToString();
strSql = "Update z_GoodsInfo set Goods_point=Goods_point+1 where Goods_ID='" + gid + "';";
webService.ExcuteSql(strSql);
strSql = "select * from z_GoodsInfo where Goods_ID='" + gid + "';";
dtTable = webService.ExcuteSelect(strSql);
this.lblGoodsName.Text = dtTable.Rows[0]["Goods_name"].ToString();
this.lblDesc.Text = dtTable.Rows[0]["Goods_orderDesc"].ToString();
this.Image1.ImageUrl = dtTable.Rows[0]["Goods_img"].ToString();
this.lblPoint.Text = dtTable.Rows[0]["Goods_point"].ToString();
this.lblAddDate.Text = dtTable.Rows[0]["Goods_addDate"].ToString();
this.lblGoodsMsg.Text = dtTable.Rows[0]["Goods_introduce"].ToString();
if (dtTable.Rows[0]["Goods_isSpecial"].ToString() == "y")
this.lblPrice.Text = "优惠价:$" + dtTable.Rows[0]["Goods_specialPrice"].ToString();
else
this.lblPrice.Text = "$" + dtTable.Rows[0]["Goods_price"].ToString();
this.lbtnBuy.CommandArgument = gid;
}
问题:string gid;定义的gid,为什么能 gid = Request.QueryString["gid"].ToString();
我是在修改别人编的程序,我运行时,网页显示不出图片,图片变成这样了差差了,右击差差图片,选择属性,发现大小,类型,创建时间,修改时间都不可用.这些图片都是从数据库中调用的