php实现:一次选择多个文件上传

php实现:一次选择多个文件上传,第1张

参考代码如下:

<?php

$max_files=5 //最多上传文件的个数,与 up.htm 中的 input file 控件的个数相同

$up_ok_files=0//成功上传的文件个数

$up_folder="ups" //保存上传文件的目标文件夹

if(isset($_FILES['myfile'])){

//由于 $_FILES['myfile'] 是个数组,所以需要使用循环遍历

for($i=0$i<$max_files$i++){

//如果未出错

if($_FILES['myfile']['error'][$i]==0){

if(move_uploaded_file($_FILES['myfile']['tmp_name'][$i],$up_folder."/".$_FILES['myfile']['name'][$i])){

//成功上传后,计数器增 1

$up_ok_files +=1

}

else{

echo "<h4 style='color:red'>在服务器中保存失败</h4>"

}

}

}

echo "<h4>成功上传 ".$up_ok_files. " 个文件</h4>"

}

?>

注意:

如果对 $_FILES['myfile'] 这个数组的结构不清楚,可以在循环之前加入这句代码将其显示出来:

print_r($_FILES['myfile'])

通过报错信息我们能够看到('failed to open stream','Failed opening required'),这是被包含的文件无法打开。造成这种错误原因有两个。

1、在source_index.php这个文件同级目录下面没有function.php这个文件。

2、或者是require_once(data/function.php)这条语句写错了,造成无法定位到正确的目录。我在下面再给你介绍一下目录定位的一些知识。

2.1、require_once("data/function.php")

意思是:调用source_index.php所处目录下的data目录下面的function.php文件。

2.2、require_once("/data/function.php")

意思是:调用source_index.php所在目录根目录下面的data目录下面的function.php文件。

2.3、require_once("../data/function.php")

意思是:调用source_index.php上一级目录下面的data目录下面的function.php文件。

2.4、require_once("./data/function.php")

意思是:调用source_index.php当前目录下的data目录下面的function.php文件,与require_once("data/function.php")该条语句的作用是一样的。

希望上面的知识能帮你解决这个问题。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/11467053.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存