在php中上载.JPG、.PNG扩展名的文件

在php中上载.JPG、.PNG扩展名的文件,php,Php,我读了,但是我需要在我的文件上传系统中上传.JPG文件 这是我的密码: <?php $allowedExts = array("gif", "jpeg", "jpg", "png" , "JPG"); $temp = explode(".", $_FILES["file"]["name"]); $extension = end($temp); if ((($_FILES["file"]["type"] == "image/gif") || ($_FILES["file"]["type"]

我读了,但是我需要在我的文件上传系统中上传.JPG文件

这是我的密码:

<?php
$allowedExts = array("gif", "jpeg", "jpg", "png" , "JPG");
$temp = explode(".", $_FILES["file"]["name"]);
$extension = end($temp);
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/jpg")
|| ($_FILES["file"]["type"] == "image/JPG")
|| ($_FILES["file"]["type"] == "image/pjpeg")
|| ($_FILES["file"]["type"] == "image/x-png")
|| ($_FILES["file"]["type"] == "image/png"))
&& ($_FILES["file"]["size"] < 20000)
&& in_array($extension, $allowedExts))
  {
  if ($_FILES["file"]["error"] > 0)
    {
    echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
    }
  else
    {
    echo "Upload: " . $_FILES["file"]["name"] . "<br>";
    echo "Type: " . $_FILES["file"]["type"] . "<br>";
    echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
    echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br>";

    if (file_exists("upload/" . $_FILES["file"]["name"]))
      {
      echo $_FILES["file"]["name"] . " already exists. ";
      }
    else
      {
      move_uploaded_file($_FILES["file"]["tmp_name"],
      "upload/" . $_FILES["file"]["name"]);
      echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
      }
    }
  }
else
  {
  echo "Invalid file";
  }
?>

如果您的意思是您在使用大写扩展名时遇到问题,请尝试在您的条件下使用以下命令将扩展名转换为小写,如:

。。。
如果(($_文件[“文件”][“类型”]=“图像/gif”)
||($_文件[“文件”][“类型”]=“图像/jpeg”)
||($_文件[“文件”][“类型”]=“图像/jpg”)
||($_文件[“文件”][“类型”]=“图像/JPG”)
||($_文件[“文件”][“类型”]=“图像/pjpeg”)
||($_文件[“文件”][“类型”]=“图像/x-png”)
||($_文件[“文件”][“类型”]=“图像/png”))
&&($_文件[“文件”][“大小”]<20000)
&&in_数组(strtolower($extension),$allowedExts))
{
…//剩下的代码
$temp=$\u文件[“文件”][“名称”];
$valid_formats=数组(“jpg”、“png”、“gif”、“bmp”、“jpg”、“png”、“gif”、“bmp”);
列表($txt,$ext)=分解(“.”,$temp);
if(在数组中($ext,$valid_格式)){
如果($\u文件[“文件”][“错误”]>0){
回显“返回代码:”.$\u文件[“文件”][“错误”]。
”; } 否则{ echo“上传:.”文件[“文件”][“名称”]。“
”; echo“Type:”.$\u文件[“file”][“Type”]。“
”; 回显“大小:”($_文件[“文件”][“大小”]/1024)。“kB
”; 回显“临时文件:”.$\u文件[“文件”][“tmp\u名称”]。
”; 如果(文件存在(“上载/”$\u文件[“文件”][“名称”])) { echo$\u文件[“文件”][“名称”]。“已存在。”; } 其他的 { 移动上传的文件($文件[“文件”][“tmp文件名”], “上载/”$_文件[“文件”][“名称”]); echo“存储在:“.”upload/“$\u文件[”文件“][”名称“]; } } } 否则{ 回显“无效文件”; }
试试这段代码,它可能会帮助你……

在这里,这将帮助你(我希望)

验证文件是否存在以及类型是否为映像


不,即使我转换成strtolower($extension),它仍然显示相同的错误。这也有同样的问题。“无效文件”。警告:explode()希望参数2是字符串,数组在/opt/lampp/htdocs/z/dca\u 1/admin/fileupload/File\u uploader.php中给定。这是我现在遇到的错误添加这一行
$temp=$\u FILES[“File”][“name”];
而不是
$temp=explode(“.”,$\u FILES[“file”][“name”]);
您的链接是可以的,但我想要的是,我需要我的问题的答案。
$allowedExts = array("gif", "jpeg", "jpg", "png" , "JPG");
|| ($_FILES["file"]["type"] == "image/JPG")
...
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/jpg")
|| ($_FILES["file"]["type"] == "image/JPG")
|| ($_FILES["file"]["type"] == "image/pjpeg")
|| ($_FILES["file"]["type"] == "image/x-png")
|| ($_FILES["file"]["type"] == "image/png"))
&& ($_FILES["file"]["size"] < 20000)
&& in_array(strtolower($extension), $allowedExts))
{
...//rest of your code
    $temp = $_FILES["file"]["name"];    
    $valid_formats = array("jpg", "png", "gif", "bmp", "JPG", "PNG", "GIF", "BMP");
    list($txt, $ext) = explode(".", $temp);

    if(in_array($ext,$valid_formats)){

     if ($_FILES["file"]["error"] > 0){
        echo "Return Code: " . $_FILES["file"]["error"] . "<br>";
     }
     else{
      echo "Upload: " . $_FILES["file"]["name"] . "<br>";
      echo "Type: " . $_FILES["file"]["type"] . "<br>";
      echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
      echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br>";

    if (file_exists("upload/" . $_FILES["file"]["name"]))
      {
      echo $_FILES["file"]["name"] . " already exists. ";
      }
    else
      {
      move_uploaded_file($_FILES["file"]["tmp_name"],
      "upload/" . $_FILES["file"]["name"]);
      echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
      }
    }
}
else{
  echo "Invalid file";
}
if(file_exists($path_image) && in_array(exif_imagetype($path_image),array(1, 2, 3, 6))){ ... }