Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 多文件上载foreach错误_Php_File_Upload - Fatal编程技术网

Php 多文件上载foreach错误

Php 多文件上载foreach错误,php,file,upload,Php,File,Upload,我以前多次使用过下面的代码,最近发现它可以再次尝试使用。现在似乎有一个错误,我无法修复,谁能看到我做错了什么 foreach ($_FILES['image']['name'] as $i => $name) { $uploadfile = $uploaddir . basename($name); if (!move_uploaded_file($file_post["tmp_name"][$i],$uploadfile)) { e

我以前多次使用过下面的代码,最近发现它可以再次尝试使用。现在似乎有一个错误,我无法修复,谁能看到我做错了什么

foreach ($_FILES['image']['name'] as $i => $name) {     

    $uploadfile = $uploaddir . basename($name);

    if (!move_uploaded_file($file_post["tmp_name"][$i],$uploadfile)) 
    {
        echo set_e('error','Image ['.$i.'] not uploaded','');
    }


}
我得到的错误是

Warning: Invalid argument supplied for foreach() in /sitefolder/functions.php on line 1096

第1096行是第一个代码框中的第一行。首先,在不检查数组键是否存在的情况下,切勿使用数组键。把代码包起来

if (array_key_exists('image', $_FILES)) 
{
  // ...
} 
else 
{
  // error handling
}
其次,即使键存在,
$\u文件['image']['name']
也应该是字符串,但无论如何,您不能将其馈送到
foreach
。更好:

foreach ($_FILES as $file) 
{     
  $uploadfile = $uploaddir . basename($file['name']);
  if (!move_uploaded_file($file["tmp_name"], $uploadfile)) 
  {
      echo set_e('error','Image ['.$i.'] not uploaded','');
  }
}

首先,在不检查数组键是否存在的情况下,永远不要使用它们。把代码包起来

if (array_key_exists('image', $_FILES)) 
{
  // ...
} 
else 
{
  // error handling
}
其次,即使键存在,
$\u文件['image']['name']
也应该是字符串,但无论如何,您不能将其馈送到
foreach
。更好:

foreach ($_FILES as $file) 
{     
  $uploadfile = $uploaddir . basename($file['name']);
  if (!move_uploaded_file($file["tmp_name"], $uploadfile)) 
  {
      echo set_e('error','Image ['.$i.'] not uploaded','');
  }
}

Hi尝试了原始代码,并尝试了我添加的编辑,但仍然没有work@Ben:你能解释一下“不起作用”是什么意思吗?
$\u文件的
print\u r()
也可以提供一些细节。我的意思是它显示错误消息集(…)。此外,打印结果返回为空。。。Array()标记上有enctype=“multipart/form data”吗?我在看到数组为空后添加了它。还可以将表单输入元素从数组更改为数组。他们现在正在上传,只是需要把代码从tmp文件夹中移走。谢谢你的帮助。我尝试了原始代码,并尝试了我添加的编辑,但仍然没有work@Ben:你能解释一下“不起作用”是什么意思吗?
$\u文件的
print\u r()
也可以提供一些细节。我的意思是它显示错误消息集(…)。此外,打印结果返回为空。。。Array()标记上有enctype=“multipart/form data”吗?我在看到数组为空后添加了它。还可以将表单输入元素从数组更改为数组。他们现在正在上传,只是需要把代码从tmp文件夹中移走。谢谢你的帮助