本地路径的话 $targetFile 难道抄不是吗?
如果是袭 web 路径的话应该是
$_SERVER['SERVER_NAME'].$targetFolder. '/' . $_FILES['Filedata']['name'];
js在客户端,你得到了也没法写到数据库啊。我没用过 jquery 上传,不好说怎么解决,不过我搜到个这个 http://www.cnblogs.com/oec2003/archive/2010/01/06/1640027.html
里边提到 onSelect 事件里可以得到文件名,你再组合你的域名和 /activity/uploads ,应该就是最后文件的路径。
② 在c#中(c/s)如何实现将上传的文件保存到指定的文件夹
参考一下我写的上传的事件,我把保存的路径配置在web.cofig里面了,(需要注意的是超过一定的大小4M的话就会发生前台的异常,而且这个异常后台没办法捕获,网上有个家伙写的捕获的异常的方法我试了,根本没有用):
protected void btnSave_Click(object sender, System.EventArgs e)
{
HttpPostedFile postedFile = fileUploadInput.PostedFile;
String userType = this.ddlUserType.SelectedValue;
if (postedFile!=null)
{
//判断文件是否小于10Mb
if (postedFile.ContentLength < 10485760)
{
try
{
//上传文件并指定上传目录的路径
String serverPath = System.Configuration.ConfigurationSettings.AppSettings["ReportPath"];
if(serverPath!=null)
{
String fileFullName = fileUploadInput.PostedFile.FileName;
String fileName = Path.GetFileName(fileFullName);
if(getUserManager().isFileNameExist(fileName))
{
lblMsg.Text = "Upload Failed:File with same name already exists!";
}
else
{
if (!Directory.Exists(serverPath))
{
Directory.CreateDirectory(serverPath);
}
postedFile.SaveAs(serverPath+fileName);
getUserManager().saveFileToDataBase(fileName,userType);
lblMsg.Text = "Upload Successfully!";
}
}
else
{
lblMsg.Text = "Upload Failed: Path not found!";
}
/*
* FileUpLoad1.PostedFile.SaveAs(Server.MapPath("~/Files/")+ FileUpLoad1.FileName);
* 注意->这里为什么不是:FileUpLoad1.PostedFile.FileName
* 而是:FileUpLoad1.FileName?
* 前者是获得客户端完整限定(客户端完整路径)名称
* 后者FileUpLoad1.FileName只获得文件名.
*/
//当然上传语句也可以这样写(貌似废话):
//FileUpLoad1.SaveAs(@"D:\"+FileUpLoad1.FileName);
}
catch (Exception ex)
{
lblMsg.Text = "Upload Failed,Exception Occurs:" + ex.Message;
}
}
else
{
lblMsg.Text = "Upload Failed:The size of the file can not exceeded 10MB!";
}
}
else
{
lblMsg.Text = "File not seleced!";
}
}
③ 使用ExtJs的FileUploadField.js上传文件时遭遇文件路径始终包含C:\fakepath字眼 如何获取真实文件路径
这是浏览器的安全策略,无法使用js修改的,ExtJs的大神们都没解决这个
只能判断是否支持显示完整路径,然后进行显示
或使用flash的上传文件方式,浏览器可管不了flash的事
④ C#Bitmap System.ArgumentException: 参数无效
你自己把FileUpImage_filePath打出来看看
看看文件是否存在
⑤ 如何获取表单中file文件域中的路径及文件名
不知道你说的本地路是服务器上的还是客户上的?不过都可以获得.. 有点乱,自己整理了。呵呵。
<%//上传文件 需要 common-fileupload 组件/*String up = request.getParameter(up);
if(up!=null&&up.equals(true)){try{String temp = c:\\; //临时目录
String strUp = request.getParameter(path); //上传目标地址
if(strUp!=null&&!strUp.equals()){
strUp = new String(strUp.getBytes(ISO-8859-1), GB2312);}DiskFileUpload fu = new DiskFileUpload();
fu.setSizeMax(1024*1024*1024); // 设置允许用户上传文件大小,单位:字节
fu.setSizeThreshold(4096); // 设置最多只允许在内存中存储的数据,单位:字节
fu.setRepositoryPath(temp); // 设置一旦文件大小超过getSizeThreshold()的值时数据存放在硬盘的目录
//开始读取上传信息
List fileItems = fu.parseRequest(request);
Iterator iter = fileItems.iterator(); // 依次处理每个上传的文件
while(iter.hasNext()) {
FileItem item = (FileItem) iter.next();// 忽略其他不是文件域的所有表单信息
if(!item.isFormField()){
String name = item.getName(); //获取上传文件名,包括路径
name = name.substring(name.lastIndexOf(\\)+1);//从全路径中提取文件名
long size = item.getSize();
if((name==null||name.equals()) && size==0)continue;System.out.println(userIp+:上传文件:+name+到+strUp);//输出上传文件信息
File fNew= new File(strUp, name);
item.write(fNew);
message = message + <font color=blue文件 <b+item.getName()+</b 上传成功!</font;}}}catch(Exception ex){
message = message + <font color=red文件上传失败!</font;}}*/%
⑥ fileupload 获取选中文件的绝对路径
fileupload 获取选中文件的绝对路径,实现参考如下:
protected void BtnUp_Click(object sender, EventArgs e)
{
if (FileUpload.HasFile)
{
string savePath = Server.MapPath("~/upload/");//指定上传文件在服务器上的保存路径
//检查服务器上是否存在这个物理路径,如果不存在则创建
if (!System.IO.Directory.Exists(savePath))
{
System.IO.Directory.CreateDirectory(savePath);
}
savePath = savePath + "\\" + FileUpload.FileName;
FileUpload.SaveAs(savePath);
LabMsg.Text = string.Format("<a href='upload/{0}'>upload/{0}</a>", FileUpload.FileName);
}
else
{
LabMsg.Text = "没有选择文件!";
}
}
⑦ HttpPostedFile hf = c.Request.Files[0]; 报错:索引超出 怎么办
我已经测试过了 没问题。
ArrayList arr = new ArrayList();
Class1 c1 = new Class1 ();
c1.a = 11;
c1.b = 12;
arr.Add(c1.a);
arr.Add(c1.b);
Class1 c2 = new Class1 ();
c2.a = 21;
c2.b = 22;
arr.Add(c2.a);
arr.Add(c2.b);
ListItemCollection listBoxData = new ListItemCollection();
for (int i = 0; i < arr.Count;i++ )
{
listBoxData.Add(fnew ListItem(arr[i].ToString(), arr[i].ToString()));
}
DropDownList1.DataSource = listBoxData;
DropDownList1.DataBind();
⑧ 服务器的文件路径地址怎么获取
上传文件后的下载地址?这个得看程序是怎么写的。上传到服务器后存到了哪个地方,之后你去访问服务器的这个地址,才能重新下载。你要是不懂就去问开发。
⑨ jquery或者js获取上传文件的路径问题
我的理解是你应该先通过图片上传接口把图片上传到服务器上(上传后的服务器端的图片地址,保存到<input type="hidden">里),然后再统一提交所有的表单项。
⑩ C#怎么获得客户端指定文件的路径
|1、打来开文件路径:自
OpenFileDialog ofd = new OpenFileDialog(); //new一个方法
ofd.Filter = "(*.et;*.xls;*.xlsx)|*.et;*.xls;*.xlsx|all|*.*"; //删选、设定文件显示类型
ofd.ShowDialog(); //显示打开文件的窗口
string fileName = ofd.FileName; //获得选择的文件路径
2、打开文件夹路径
FolderBrowserDialog fbd = new FolderBrowserDialog();
fbd.ShowDialog();
folderName = fbd.SelectedPath; //获得选择的文件夹路径
3、保存文件
SaveFileDialog sfd = new SaveFileDialog();
sfd.Filter = "(*.et;*.xls;*.xlsx)|*.et;*.xls;*.xlsx|all|*.*"; //删选、设定文件显示类型
sfd.ShowDialog();
string path = sfd.FileName;