上传PHP后如何更改文件名

MyNameIsNotSoCool

目前,我的代码上传了一个带有用户提交的图像名称的图像文件。现在显然我想更改此设置以避免覆盖问题。现在,我看了其他一些建议,但似乎无法使其与我的代码一起使用(我只学习PHP几个月了)。那么,你们可以帮我吗?这是上传代码

<?php
$target_dir = "avatars/";
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
$uploadOk = 1;
$imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);
// Check if image file is a actual image or fake image
if(isset($_POST["submit"])) {
    $check = getimagesize($_FILES["fileToUpload"]["tmp_name"]);
    if($check !== false) {
        //echo "File is an image - " . $check["mime"] . ".";
        $uploadOk = 1;
    } else {
        echo "File is not an image.";
        $uploadOk = 0;
    }
}
// Check if file already exists
if (file_exists($target_file)) {
    echo "Sorry, file already exists.";
    $uploadOk = 0;
}
// Check file size
if ($_FILES["fileToUpload"]["size"] > 500000) {
    echo "Sorry, your file is too large.";
    $uploadOk = 0;
}
// Allow certain file formats
if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg"
&& $imageFileType != "gif" ) {
    echo "Sorry, only JPG, JPEG, PNG & GIF files are allowed.";
    $uploadOk = 0;
}
// Check if $uploadOk is set to 0 by an error
if ($uploadOk == 0) {
    echo "Sorry, your file was not uploaded.";
// if everything is ok, try to upload file
} else {
    if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
        //echo "The file ". basename( $_FILES["fileToUpload"]["name"]). " has been uploaded.";
    } else {
        echo "Sorry, there was an error uploading your file.";
    }
}
?>

我的猜测是我需要更改move_uploaded_file代码吗?谢谢你的帮助!

三3

更改此:

$target_dir = "avatars/";
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);

对此:

$rand = rand(10000000, 999999999);
$time = time();
$file_name = $rand.$time.$_FILES["fileToUpload"]["name"];
$target_dir = "avatars/";
$target_file = $target_dir . $file_name;

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

文件上传php,仅获取文件名

来自分类Dev

保存上传的文件后更新FileField文件名(Django)

来自分类Dev

Dropzone.js-如何在上传到文件夹之前更改文件名

来自分类Dev

jQuery BlueImp上传前如何更改文件名?

来自分类Dev

如何从PHP表单文件上传的文件名中删除特殊字符,例如撇号/引号

来自分类Dev

在delphi中ftp上传后的随机文件名

来自分类Dev

在PHP5文件上传器上更改文件名

来自分类Dev

如何获取上传的文件名?

来自分类Dev

通过Gradle上传到工件时如何更改jar文件名

来自分类Dev

上传之前Dropzone JS更改文件名

来自分类Dev

PHP正在更改原始文件名

来自分类Dev

启动-如何更改文件名

来自分类Dev

更改文件名后出现错误

来自分类Dev

如何更改要下载的文件名

来自分类Dev

保存上传的文件后更新FileField文件名(Django)

来自分类Dev

如何更改JSON数组的文件名?

来自分类Dev

如何更改包含<>字符的文件名

来自分类Dev

yii如何更改上传的文件名

来自分类Dev

文件上传完成后删除文件名?

来自分类Dev

上传后显示文件名

来自分类Dev

通过CURL上传-如何更改目标文件名?

来自分类Dev

更改文件名,如何?

来自分类Dev

上传图片并更改原始图片文件名

来自分类Dev

Java中的文件上传更改文件名

来自分类Dev

PHP文件上传更改文件名保持扩展名

来自分类Dev

更改上传的文件名asp.net mvc

来自分类Dev

PHP多文件上传显示每个文件名

来自分类Dev

php上传后删除文件名中的空格不起作用

来自分类Dev

上传文件时更改文件名