我在web端的多图片上传测试是正确的,可以上传图片,也可以录入数据库,但是在ios就不行,只能上传一张图片,会把其它图片覆盖掉,这是什么原因呢,求助,急急急!!!!!!!!
Model层
public function up(){
<code> if($_FILES['upload']['error'][0]==0){
//调用文件上传的方法
$info = $this ->upload();
foreach($info as $info_v){</code>// 截取文件后缀名,判断是什么类型文件
<code> $suffix = substr(strrchr($info_v['upload'],'.'),1);</code>
// 判断文件分类是否给定
// 判断文件类型
// 图片
<code> if($suffix=='jpg'||$suffix=='gif'||$suffix=='png'||$suffix=='jpeg'){
$type=1;
}else</code>// 视频
<code> if($suffix=='mp4'){
$type=2;
}else</code>// 音乐
<code> if($suffix=='mp3'){
$type=4;
}else{
$type=3;
}
</code>// 将上传文件添加到数据库
<code> $id = $this->add(array('user_id'=>1,'upload_url'=>$info_v['upload'],'c_time'=>NOW_TIME,'size'=>$info_v['size'],'type'=>$type));
}
if($id){
return $id;
}else{
return '上传失败';
}
}
}
</code>// 上传方法
<code>protected function upload(){</code>// $files = $_FILES['upload'];
<code> $upload = new \Think\Upload();// 实例化上传类
//C方法是用来读取配置信息
$upload->maxSize = C('maxSize') ;// 设置附件上传大小
$upload->exts = C('exts');// 设置附件上传类型
$upload->savePath = C('savePath'); // 设置附件上传目录
$upload->saveName = C('saveName'); // 设置上传文件的保存规则
$upload->rootPath = C('rootPath');
// 上传文件
$info = $upload->upload();
// print_r($info);die;
$img_arr=array();
if(!$info) {
// 上传错误提示错误信息
return $upload->getError();
}else{
foreach ($info as $k=>$v){
//拼接文件存储路径
$img_url = C('img_path').$v['savepath'].$v['savename'];
$img_arr[$k]['upload']= $img_url;
$img_arr[$k]['size']= $v['size'];
}
return $img_arr;
}
}
</code>Controller 层
// 上传文件
<code>public function index(){
if(IS_POST){
// 调用模型层的方法
$id = $this->upload->up();
if(is_numeric($id)){
$data = array(
'success'=>true,
'message'=>'上传成功',
'data'=>'',
);
echo json_encode($data);
}
}
}</code>我在web端的多图片上传测试是正确的,可以上传图片,也可以录入数据库,但是在ios就不行,只能上传一张图片,会把其它图片覆盖掉,这是什么原因呢,求助,急急急!!!!!!!!
Model层
public function up(){
<code> if($_FILES['upload']['error'][0]==0){
//调用文件上传的方法
$info = $this ->upload();
foreach($info as $info_v){</code>// 截取文件后缀名,判断是什么类型文件
<code> $suffix = substr(strrchr($info_v['upload'],'.'),1);</code>
// 判断文件分类是否给定
// 判断文件类型
// 图片
<code> if($suffix=='jpg'||$suffix=='gif'||$suffix=='png'||$suffix=='jpeg'){
$type=1;
}else</code>// 视频
<code> if($suffix=='mp4'){
$type=2;
}else</code>// 音乐
<code> if($suffix=='mp3'){
$type=4;
}else{
$type=3;
}
</code>// 将上传文件添加到数据库
<code> $id = $this->add(array('user_id'=>1,'upload_url'=>$info_v['upload'],'c_time'=>NOW_TIME,'size'=>$info_v['size'],'type'=>$type));
}
if($id){
return $id;
}else{
return '上传失败';
}
}
}
</code>// 上传方法
<code>protected function upload(){</code>// $files = $_FILES['upload'];
<code> $upload = new \Think\Upload();// 实例化上传类
//C方法是用来读取配置信息
$upload->maxSize = C('maxSize') ;// 设置附件上传大小
$upload->exts = C('exts');// 设置附件上传类型
$upload->savePath = C('savePath'); // 设置附件上传目录
$upload->saveName = C('saveName'); // 设置上传文件的保存规则
$upload->rootPath = C('rootPath');
// 上传文件
$info = $upload->upload();
// print_r($info);die;
$img_arr=array();
if(!$info) {
// 上传错误提示错误信息
return $upload->getError();
}else{
foreach ($info as $k=>$v){
//拼接文件存储路径
$img_url = C('img_path').$v['savepath'].$v['savename'];
$img_arr[$k]['upload']= $img_url;
$img_arr[$k]['size']= $v['size'];
}
return $img_arr;
}
}
</code>Controller 层
// 上传文件
<code>public function index(){
if(IS_POST){
// 调用模型层的方法
$id = $this->upload->up();
if(is_numeric($id)){
$data = array(
'success'=>true,
'message'=>'上传成功',
'data'=>'',
);
echo json_encode($data);
}
}
}</code>
ios掉用你接口的时候是不是多图一次性请求的!还是多图多次上传!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号