FTP上传时怎么解决中文路径和中文名称?

cdmsan 2010-12-14 02:11:37

if(file_exists($local_file)){
$file = pathinfo($local_file);
$getFileName = date("ymd").rand(1000,9999);
//$remote_file .= $date("ymd")."/";
$new_file = "{$getFileName}.".$file['extension'];
//创建FTP
$ftp = ftp_connect($ftpUrl) or die("Could not FTP connect");
//登录
ftp_login($ftp,$ftpUser,$ftpPassword);
//模式
ftp_pasv($ftp,$ftpPasv);
//传输
$ftpStatus = ftp_put($ftp,$remote_file.$new_file,$local_file,FTP_BINARY);
if($ftpStatus){
$out['msg'] = $new_file;
}
else{
$out['err'] = '文件上传失败[ftp]';
}
ftp_quit($ftp);

}else{
$out['err'] = $local_file.'未发现上传的文件';



FTP上传时怎么解决中文路径和中文名称?

如果是英文或者数字的就可以正常上传,如果路径和文件名称包含了中文则不能上传。
请请教一下。
...全文
494 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
cdmsan 2010-12-14
  • 打赏
  • 举报
回复
是不是先要像http方式上传到服务器,在进行FTP?
<input type="text" name="udfiles" id="udfiles" value="" />
不能使用text应该是file?
cdmsan 2010-12-14
  • 打赏
  • 举报
回复
我的表单为:
<form>
<input type="text" name="udfiles" id="udfiles" value="" />'
</form>

我发现在其它电脑是访问,上传的话查找的文件是服务器端的文件并不是本地的文件,是怎么回事呢?

请高手帮忙一下。
分数不够,可以加!
cdmsan 2010-12-14
  • 打赏
  • 举报
回复
中文解决了,可在其它电脑访问则提示无权限:
Warning: ftp_put(E:\\ucenter.rar) [function.ftp-put]: failed to open stream: Permission denied in G:\htdocs\cqtbbs\upanddown.php on line 38
{"err":"\u6587\u4ef6\u4e0a\u4f20\u5931\u8d25[ftp]"}

不知道是啥原因引起的。如果file_exists检查本地文件,则找不到,真是很奇怪呀。

我本机测试完全正常!
请帮一下。谢谢!

21,887

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧