为了账号安全,请及时绑定邮箱和手机立即绑定

move_uploaded_file 未将文件移动到文件夹

move_uploaded_file 未将文件移动到文件夹

PHP
婷婷同学_ 2021-10-15 16:35:37
我有一个表格,我可以从中上传一些文件。文件数组显示正确print,但目标文件夹中没有文件。我错过了什么?这是我的代码:// Fileuploadif (!is_dir('../incidentbijlagen/'.$inc['incident']['companyname'].'')) {    mkdir('../incidentbijlagen/'.$inc['incident']['companyname'].'', 0777, true);}$uploads_dir = '../incidentbijlagen/'.$inc['incident']['companyname'].'/';foreach($bijlage['incident'] as $key => $file){  $tmp_name = $file['incident']['tmp_name']['bijlage'][$key];  $name = basename($file['incident']['name']['bijlage'][$key]);  move_uploaded_file($tmp_name, "$uploads_dir/$name");}我的 error_log 中没有错误,所以我不确定为什么文件没有被移动。这是我的阵列在我print它时的样子:Array(    [incident] => Array        (            [name] => Array                (                    [bijlage] => Array                        (                            [0] => fblogosnm.jpg                        )                )            [type] => Array                (                    [bijlage] => Array                        (                            [0] => image/jpeg                        )                )            [tmp_name] => Array                (                    [bijlage] => Array                        (                            [0] => /tmp/phpnh5aHW                        )                )            [error] => Array                (                    [bijlage] => Array                        (                            [0] => 0                        )                )            [size] => Array                (                    [bijlage] => Array                        (                            [0] => 20573                        )                )        ))
查看完整描述

2 回答

?
慕桂英546537

TA贡献1848条经验 获得超10个赞

摆脱循环并尝试使用 0 像这样:


  $tmp_name = $file['incident']['tmp_name']['bijlage'][0];

  $name = basename($file['incident']['name']['bijlage'][0]);

  move_uploaded_file($tmp_name, "$uploads_dir/$name");

更新


好多个,试试这个:


foreach($bijlage['incident']['name']['bijlage'] as $key => $file) {

  $tmp_name = $file['incident']['tmp_name']['bijlage'][$key];

  move_uploaded_file($tmp_name, "$uploads_dir/$file");

}


查看完整回答
反对 回复 2021-10-15
?
HUX布斯

TA贡献1876条经验 获得超6个赞

尝试替换: $uploads_dir = '../incidentbijlagen/'.$inc['incident']['companyname'].'/';

和: $uploads_dir = realpath('../incidentbijlagen/'.$inc['incident']['companyname'].'/');

这将返回完整路径(例如:/var/www/yourwebsite/incidentbijlagen/ 等)


查看完整回答
反对 回复 2021-10-15
  • 2 回答
  • 0 关注
  • 187 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信