1. 只保存了文件名.没有上传文件处理的过程.相当于你只存了个文件名.没有上传文件.
2. 没有判断用户是否有上传文件.这就是你的报错问题所在.
3. 没有对文件名重复性进行处理.
4. 托管资源.不需要去显式做dispose,反而降低效率.
5. SQL传参要用sqlparameters.
6. 变量声明要养成好习惯.
7. 不管上传执行成功还是失败,程序返回都是成功.
8. 向客户端写js脚本要用page.registXXX瞟了一眼.8个问题.楼主搬代码要先理解了再用...

解决方案 »

  1.   

    我晕,图片怎能如此上传啊.
    以前做的上传控件选择二进制文件保存方法,你看一下吧,希望你有用.
    前台服务器端代码
    Stream fs = FileUp.PostedFile.InputStream;//FileUp为上传控件名
    int imgdatalen = FileUp.PostedFile.ContentLength;
    Byte[] mybyte = new Byte[imgdatalen];
    fs.Read(mybyte, 0, imgdatalen);
    DataTable tab = new DataTable();
    tab.Columns.Add(new DataColumn("Content", typeof(Byte[])));
    DataRow row = tab.NewRow();
    row["Content"] = mybyte;
    tab.Rows.Add(row);
    然后回传后台处理
    后台类库部分代码
    Byte[] Content = null;
    Content = (Byte[])Tables1.Rows[0]["Content"];
      

  2.   

    我感觉错误还有可能在这里
    "HH:mm:ss"
    貌似你这几个分号是全角的.
      

  3.   

    kong521的说法我赞成,
    顶一下