无法使用PHP将视频上传到文件夹?

时间:2019-12-27 01:38:05

标签: php video xampp mp4

我正在制作一个上传系统,用户可以在其中上传图像和视频,但是我在上传系统上遇到问题。主要在上传视频上。图片很好,可以上传,但是当我尝试上传视频时问题就开始了。尝试上传视频时没有显示任何错误,所以我什至不知道问题出在哪里。当前这是我的PHP代码:

<?php 

    if(isset($_POST['btn-add']))
    {
        $name=$_POST['user_name'];
        $images=$_FILES['profile']['name'];
        $path = "uploads/";
        $rand=rand(1000, 1000000);
        $filename = "$rand.jpg";
        $filepath = "$path$filename";

                function correctImageOrientation($filename) {
  if (function_exists('exif_read_data')) {
    $exif = exif_read_data($filename);
    if($exif && isset($exif['Orientation'])) {
      $orientation = $exif['Orientation'];
      if($orientation != 1){
        $img = imagecreatefromjpeg($filename);
        $deg = 0;
        switch ($orientation) {
          case 3:
            $deg = 180;
            break;
          case 6:
            $deg = 270;
            break;
          case 8:
            $deg = 90;
            break;
        }
        if ($deg) {
          $img = imagerotate($img, $deg, 0);        
        }
        // then rewrite the rotated image back to the disk as $filename 
        imagejpeg($img, $filename, 95);
      } // if there is some rotation necessary
    } // if have the exif orientation info
  } // if function exists      
}

        $imgExt=strtolower(pathinfo($images,PATHINFO_EXTENSION));
         move_uploaded_file($_FILES["profile"]["tmp_name"], $filepath); 


        if($imgExt == "jpg" || $imgExt == "jpeg" || $imgExt == "png" || $imgExt == "gif"){

         correctImageOrientation($filepath);


        if ($imgExt == "jpeg" || $imgExt == "jpg") {
            $im = imagecreatefromjpeg($filepath);
        }else if($imgExt == "png"){
            $im = imagecreatefrompng($filepath);
        }else if($imgExt == "gif"){
            $im = imagecreatefromgif($filepath);
        }
        $size = getimagesize($filepath);

             $width = imagesx($im);
             $height = imagesy($im);
             $newwidth= 300;
             $newheight= 300;


                if(($width/$newwidth) < ($height/$newheight)){
                    $y = 0;
                    $x = $width - (($height * $newwidth) / $newheight);
                }else{
                    $x = 0;
                    $y = $height - (($width * $newheight) / $newwidth);
                }

             $virtual_image = imagecreatetruecolor(301, 301);
             imagealphablending($virtual_image, true);
             imagesavealpha($virtual_image, true);



             imagecopyresampled($virtual_image,$im,0,0, $x/2, $y/2, $newwidth, $newheight, $width-$x, $height-$y); 
             $bgcolor = imagecolorallocatealpha($virtual_image,255,255,255,127);

             imagefill($virtual_image,0,0,$bgcolor);

             imagecolortransparent($virtual_image, $bgcolor);


             imagejpeg($virtual_image,$filepath,100);

             }else if ($imgExt == "mp4"){   

             }else echo "Invalid file";



            $stmt=$db_conn->prepare('INSERT INTO tbl_user(username, picprofile) VALUES (:uname, :upic)');
            $stmt->bindParam(':uname', $name);
            $stmt->bindParam(':upic', $filename);
            if($stmt->execute())
        {
            ?>
            <script>

            </script>
            <?php

        }else

        {
            ?>
            <script>

            </script>
        <?php
        }

    }
?>

1 个答案:

答案 0 :(得分:0)

对不起,我不能发表评论,所以我只作为答复发布,但您没有指定文件扩展名为Mp4时代码应该怎么做

   }else if ($imgExt == "mp4"){  
//here should contain your codes and commands if the file is mp4 
 }

因此php不处理文件,也没有错误,请检查特定的上传文件夹和temp文件夹