Php 正在将图像上载到具有唯一名称的图像文件夹

Php 正在将图像上载到具有唯一名称的图像文件夹,php,Php,这是我的图片上传页面。我想要的是小一点的版本。我希望图像名称看起来像(文件夹)image/userid\u time.jpg 所以我想把图像上传到图像文件夹 我希望所有图像都有新名称,或者我们可以说唯一的名称 这方面有什么意见吗 <?php // upload2.php echo <<<_END <html><head><title>PHP Form Upload</title></head><body&g

这是我的图片上传页面。我想要的是小一点的版本。我希望图像名称看起来像(文件夹)image/userid\u time.jpg

所以我想把图像上传到图像文件夹

我希望所有图像都有新名称,或者我们可以说唯一的名称

这方面有什么意见吗

<?php // upload2.php
echo <<<_END
<html><head><title>PHP Form Upload</title></head><body>
<form method='post' action='upload2.php' enctype='multipart/form-data'>
Select a JPG, GIF, PNG or TIF File:
<input type='file' name='filename' size='10' />
<input type='submit' value='Upload' /></form>
_END;
if ($_FILES) {
    $name = $_FILES['filename']['name'];
    switch ($_FILES['filename']['type']) {
        case 'image/jpeg':
            $ext = 'jpg';
            break;
        case 'image/gif':
            $ext = 'gif';
            break;
        case 'image/png':
            $ext = 'png';
            break;
        case 'image/tiff':
            $ext = 'tif';
            break;
        default:
            $ext = '';
            break;
    }
    if ($ext) {
        $n = "image.$ext";
        move_uploaded_file($_FILES['filename']['tmp_name'], $n);
        echo "Uploaded image '$name' as '$n':<br />";
        echo "<img src='$n' />";
    } else
        echo "'$name' is not an accepted image file";
} else
    echo "No image has been uploaded";
echo "</body></html>";
?>

您可以拥有该文件名,然后可以使用
uniqid(“{$filename}”)将其追加到
。因此,输出类似于
filename_4b3403665fea6
,然后您可以添加扩展名:)

此处的文档:


编辑:很抱歉,我看错了你的问题。

你可以有文件名,然后用
uniqid(“{$filename}”)将其追加。
。因此,输出类似于
filename_4b3403665fea6
,然后您可以添加扩展名:)

此处的文档:


编辑:对不起,我看错了你的问题。

只需更改
$n
。由于您总是将其设置为
“image.$ext”
,因此您将始终获得相同的文件名


取而代之的是,你需要按照你想要的方式来命名它。类似于“
$userid.”“.time().”“$ext
,假设用户的ID在
$userid

中,只需更改
$n
。由于您总是将其设置为
“image.$ext”
,因此您将始终获得相同的文件名

取而代之的是,你需要按照你想要的方式来命名它。类似于“
$userid.”“.time().”“..$ext
,假设用户的ID位于
$userid

中,您可以使用,因为:

  • 多文件上传
  • 拖放
  • 实时进度指标
  • 自定义上载限制
  • 极端定制
而且

...$verifyToken = md5('unique_salt' . $_POST['timestamp']);...
请参阅,您可以使用,因为:

  • 多文件上传
  • 拖放
  • 实时进度指标
  • 自定义上载限制
  • 极端定制
而且

...$verifyToken = md5('unique_salt' . $_POST['timestamp']);...

请参见

假设您可以将用户id放入名为$userId的变量中,您可以按照前面的建议更改$n变量

$timestamp = time();
$n = "image/$userId_$timestamp.$ext";

执行move_uploaded_file()方法时,文件将相对于上载脚本的位置移动到图像目录。您可能希望确保映像文件夹已存在且可写。

假设您可以将用户id放入名为$userId的变量中,则可以按照前面的建议更改$n变量

$timestamp = time();
$n = "image/$userId_$timestamp.$ext";

执行move_uploaded_file()方法时,文件将相对于上载脚本的位置移动到图像目录。您可能需要确保映像文件夹已经存在,并且是可写的。

Np,如果我确实回答了您的问题,请记住接受为答案。)Np,如果我确实回答了您的问题,请记住接受为答案。)我在本地主机上尝试过。我不知道所有文件上传到哪里。数据库设置是什么?我在本地主机上试过了。我不知道所有文件上传到哪里。什么是数据库设置?