搬砖人干饭人
weixin_慕沐1043483
改成
if (!empty($res)) return $res;
就不报错了,你试试
因为手册写到了empty不报错,
而上面的代码等同于if(!is_null($res)) return $res;
所以报错不影响上传成功
weixin_慕沐1043483
weixin_慕沐1043483
充电_ing
给每个文件的dest一个默认值吧,或者设置一下PHP的错误等级,或者在取这个值的时候先isset一下
充电_ing
那你觉得用switch写更简单还是elseif更简单呢
imcKONG
你可以改成字符串,然后对比一下哪个更好
imcKONG
也还是通过post
weibo_爱上你的微笑pyp_0
22366135 bytes=21M,8388608 bytes=8M ,说明你上传的是21M多的大文件,而这个限制的8M是您的php.ini配置文件中post_max_size=8M,限制的上传文件最大值post_max_size=8M,post方式发送数据的最大值->就是一次性post上传文件总大小不能超过设定的post_max_size值,您可以更改为1G试下,保证想传多少就多少,但是是没有匹配相应的错误号的(错误号只有0-8,且没有5),但它也会直接告诉你就是你自己的配置php.ini配置文件中设定post_max_size=8M导致的,你改掉就不会报错了
qq_殇乗_0
看看error报错代码是多少,对应的去查查
慕仰5549039
我只知道一种方法 是在函数之前加上 /** 然后按回车
MrK_10
数据库在哪都行啊 新建一个文件也可以,看起来利索些
把之前的文件包括进来就行了 sql语句就在数据库的页面写
MrK_10
写个数据库连接文件conn.php ,然后 在doaction.php里面 include_once引入之后,在下面就可以用了
鸥耶
上传失败不就是空的吗
慕粉1474207230
不知所措
简夏汉尼3826847
实践出真知
qq_C弦_0
你要把doaction5 贴出来 才知道啊
我可以ping
因为你选择的文件有一些扩展名不是图片类型的
if ($flag&&in_array($ext,$allowExt)) {
if (!getimagesize($fileInfo['tmp_name'])) {
$res['mes'] = $fileInfo['name'].'不是真实图片类型';
}
加上in_array($ext,$allowExt)就行了,希望采纳谢谢
烟雪暝
默认屏蔽notice错误了吧
在最前面加上error_reporting(E_ALL ^ E_NOTICE);
海滩小贝壳
此函数作用于图片类型,因为是假图片,当然读取错误咯,前面加个@吧
慕盖茨8324958
if($res) return $res 改成 if(!empty($res)) return $res
侠客岛的含笑
课程开始就说了,需要修改php.ini配置,post的限制默认就是8M,在文件中找到参数post_max_size,并把它的值改成你需要的大小。当然也有可能是参数upload_max_filesize没有修改,它的预设值是2M。修改保存以后很重要的一点,重启Apache
qq_任教_04423596
默认值一般写常量,也就是$path='./upload',但是也可以用变量,例如定义了一个全局变量$allPath,那么这里可以用$path=$allPath;
Fusir
你的dest变量未定义,你在使用之前帮这个变量赋值就好了,它代表的应该是指定的目录,写相对路径就好。
qq_战狼之殇_04204973
upload
我轻轻地来了
没有$files这个变量,因为直接遍历$_FILE这个值,而不是通过函数的参数变量进行传入,那每次调用这个方法就有点奇怪了。$_FILE,我是改成调用这个函数的时候需传递文件信息过来,这样就不会报这个错误了
function getfiles($fileinfo){
$i = 0;
foreach($fileinfo as $file){
if(is_string($file['name'])){
$files[$i] = $file;
$i++;
}else if(is_array($file['name'])){
foreach($file['name'] as $key=>$val){
$files[$i]['name'] = $file['name'][$key];
$files[$i]['type'] = $file['type'][$key];
$files[$i]['tmp_name'] = $file['tmp_name'][$key];
$files[$i]['size'] = $file['size'][$key];
$files[$i]['error'] = $file['error'][$key];
$i++;
}
}
}
return $files;
}
黄金阳
我也不懂
同问
weibo_蓉芳107_03763669
按住CTRL+鼠标左键 点击就能跳转了
为何学开发
我开始也没搞懂,其实文件域的名字叫什么不重要,关键是老师写的函数可以智能判断各种不同的类型,实现上传成功。
hhhs1s1s
你可以在html里面的input框加上name属性