为了账号安全,请及时绑定邮箱和手机立即绑定

多圖上傳,如何抓到第一個、以及第二個之後的值?

多圖上傳,如何抓到第一個、以及第二個之後的值?

PHP
qq_笑_17 2019-03-11 22:46:19
我用了一個 ajax 的多圖上傳已經可以多圖上傳了 $fileCount = count($_FILES['icon']['name']); for ($i = 0; $i < $fileCount; $i++) { $file = $_FILES['icon']['tmp_name'][$i]; $dest = '../../images/admin/product/' . $_FILES['icon']['name'][$i]; move_uploaded_file($file, $dest); } 只是我現在想要分開處理第一張圖片以及第二張圖片以後的(不管幾張) 第一張圖我要 update 某一數據表第二張圖以後的我要寫入數據表 (用foreach,有幾張就處理幾張)只是我不知道這兩個我能怎麼抓?
查看完整描述

3 回答

?
隔江千里

TA贡献1906条经验 获得超10个赞

不知道是不是指的这样?

$fileCount = count($_FILES['icon']['name']);
$files = [];

    for ($i = 0; $i < $fileCount; $i++) {

      $file = $_FILES['icon']['tmp_name'][$i];
      $dest = '../../images/admin/product/' . $_FILES['icon']['name'][$i];

      move_uploaded_file($file, $dest);
      $files[] = $dest;
}

$first = true;
foreach($files as $file){
    if($first){
        $first = false;
        //第一张 update xxx
    }else{
        //第二张图开始 insert xx
    }
}
查看完整回答
反对 回复 2019-03-18
?
九州编程

TA贡献1785条经验 获得超4个赞

用for循环也是可以的,你一次上传多张图片就是一个三维数组,
你只要循环读取name,type,tmp_name,error,size的下标就好了,
$i=0是开始
那你就在循环中判断等于0的时候执行update
else
执行insert

查看完整回答
反对 回复 2019-03-18
?
幕布斯6054654

TA贡献1876条经验 获得超7个赞

$fileCount = count($_FILES['icon']['name']);

for ($i = 0; $i < $fileCount; $i++) {

  $file = $_FILES['icon']['tmp_name'][$i];
  $dest = '../../images/admin/product/' . $_FILES['icon']['name'][$i];
  move_uploaded_file($file, $dest);

  if($i == 0){
     // Update 可以直接执行,但是最好是用列队信息 这样不影响这里的效率
  }else{
     // Insert 同上
  }  

}
查看完整回答
反对 回复 2019-03-18
  • 3 回答
  • 0 关注
  • 393 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信