douqiao2471 2013-05-14 07:10
浏览 28
已采纳

如何在不同的文件夹中保存不同大小的不同文件

if (($_FILES["fileToUpload"]["type"] == "image/gif")
  || ($_FILES["fileToUpload"]["type"] == "image/jpeg")
  || ($_FILES["fileToUpload"]["type"] == "image/png" )
   &&($_FILES["fileToUpload"]["size"] <= 100))
  {
    echo $_FILES["fileToUpload"]["size"] ;
  move_uploaded_file($_FILES["fileToUpload"]["tmp_name"],
    "C:/upload/" . $_FILES["fileToUpload"]["name"]);
  }
elseif (($_FILES["fileToUpload"]["type"] == "image/gif")
  || ($_FILES["fileToUpload"]["type"] == "image/jpeg")
  || ($_FILES["fileToUpload"]["type"] == "image/png" )
  &&($_FILES["fileToUpload"]["size"] <= 1000000))
  {
    echo $_FILES["fileToUpload"]["size"] ;
   move_uploaded_file($_FILES["fileToUpload"]["tmp_name"],
    "C:/image/" . $_FILES["fileToUpload"]["name"]);
  }

   else
  {
  echo "Files must be either JPEG, GIF, or PNG and less than 10,000 kb";
  }

but my file is getting saved only in upload folder. I want if file size is less then 100kb then it should save in upload folder else it should save in image. please help

  • 写回答

5条回答 默认 最新

  • douya6229 2013-05-14 07:14
    关注

    Because && operator has higher precedence than ||. Use these brackets

    if (($_FILES["fileToUpload"]["type"] == "image/gif"
      || $_FILES["fileToUpload"]["type"] == "image/jpeg"
      || $_FILES["fileToUpload"]["type"] == "image/png")
       && $_FILES["fileToUpload"]["size"] <= 100)
    

    in all of your conditions. I also removed some redundant brackets, since == and <= operators have higher precedence than logical operators (except !). See also php operators precedence

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 如何绘制动力学系统的相图
  • ¥15 对接wps接口实现获取元数据
  • ¥20 给自己本科IT专业毕业的妹m找个实习工作
  • ¥15 用友U8:向一个无法连接的网络尝试了一个套接字操作,如何解决?
  • ¥30 我的代码按理说完成了模型的搭建、训练、验证测试等工作(标签-网络|关键词-变化检测)
  • ¥50 mac mini外接显示器 画质字体模糊
  • ¥15 TLS1.2协议通信解密
  • ¥40 图书信息管理系统程序编写
  • ¥20 Qcustomplot缩小曲线形状问题
  • ¥15 企业资源规划ERP沙盘模拟