php - Can't upload video to folder using PHP?
问题描述
I'm making a uploading system where the user can upload images and videos, But I'm having problems with the uploading system. Mainly on uploading videos. The images are fine and can be uploaded but the problem starts when I try to upload a video. It's not showing any errors when I try to upload a video So I don't even know what the problem is. This is currently my PHP code:
<?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
}
}
?>
解决方案
抱歉,我无法发表评论,所以我将作为答案发布,但您没有指定如果文件扩展名是 Mp4 代码应该做什么
}else if ($imgExt == "mp4"){
//here should contain your codes and commands if the file is mp4
}
因此php不处理文件也没有错误,请检查具体的上传文件夹和临时文件夹
推荐阅读
- google-sheets-api - 是否有其他人在阅读单个电子表格时遇到问题?
- python - 如何使用 Python 在二维 numpy 数组中找到具有可变移动(滚动)窗口的局部最大值?
- azure - 如何在流分析中使用大写来制作别名?
- android - 如何使用新的 Android-X API 从当前的 PreferenceFragment 打开一个新的 PreferenceFragment?
- typescript - 生成响应验证
- silktest - SilkTest 识别/定位器间谍窗口在 Web 浏览器窗口中看不到任何对象
- nsis - NSIS - 如何在一个子节中实现三个互斥节
- python - TensorFlow变量无法初始化
- python - Python模拟打开并检查关闭
- node.js - 依赖项未添加到 package.json 文件中