在上传商品图片时foreach循环参数出错
来源:8-2 商品添加操作(图片使用七牛上传)

阿陆耀闪闪i
2017-04-14
在上传商品图片时foreach循环参数出错,查看$_FILE里面pics的临时文件名和cover的临时文件名一样,并且pics只有最后一个文件加入到$_FILE提交
private function upload(){
if($_FILES['Product']['error']['cover'] > 0){
return false;
}
$qiniu = new Qiniu(Product::AK, Product::SK, Product::DOMAIN, Product::BUCKET);
$key = uniqid();
$qiniu->uploadFile($_FILES['Product']['tmp_name']['cover'],$key);
$cover = $qiniu->getLink($key);
$pics = [];
foreach($_FILES['Product']['tmp_name']['pics'] as $k => $file){
if($_FILES['Product']['error']['pics'][$k] > 0){
continue;
}
$key = uniqid();
$qiniu->uploadFile($file,$key);
$pics[$key] = $qiniu->getLink($key);
}
return ['cover' => $cover, 'pics' => json_encode($pics)];
}
5回答
-
Jason
2017-04-14
恩,好的
00 -
Jason
2017-04-14
按照你目前的写法,cover和pics的临时文件名称不该是一样的,仔细检查下,把数组打印出来看看,多个图片只有一个会上传,是因为你的pics不是数组形式,只会拿到最后一个,名称那里把pics改成pics[]
00 -
提阿斯
2017-04-14
老师我想请问一下你,当一个控制器继承了一个common验登录的方法,当没有登录时,如果子控制器里面没有登录时的session['uid'] 为空,那么我下面要用到这个uid的可能数据就空,然后就会有报错,不是说好的先执行init直接跳登录的嘛,请问这种问题怎么解决呢,
012017-04-14 -
阿陆耀闪闪i
提问者
2017-04-14
问题解决了老师 非常感谢您
00 -
阿陆耀闪闪i
提问者
2017-04-14
打印了$_FILE 不知道还应该看哪里的数据了 我认为是前端代码的问题 是不是应该在前端inputFile那里将pics改成pics[] 我审查元素看了一下是Product['pics'] 该怎样将pics弄成数组呢?还有 现在$_FILE里面tmp_name确实是一样的 老师您看一下
00
相似问题
回答 5
回答 1