Php 正在将图像上载到具有唯一名称的图像文件夹
这是我的图片上传页面。我想要的是小一点的版本。我希望图像名称看起来像(文件夹)image/userid\u time.jpg 所以我想把图像上传到图像文件夹 我希望所有图像都有新名称,或者我们可以说唯一的名称 这方面有什么意见吗Php 正在将图像上载到具有唯一名称的图像文件夹,php,Php,这是我的图片上传页面。我想要的是小一点的版本。我希望图像名称看起来像(文件夹)image/userid\u time.jpg 所以我想把图像上传到图像文件夹 我希望所有图像都有新名称,或者我们可以说唯一的名称 这方面有什么意见吗 <?php // upload2.php echo <<<_END <html><head><title>PHP Form Upload</title></head><body&g
<?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,如果我确实回答了您的问题,请记住接受为答案。)我在本地主机上尝试过。我不知道所有文件上传到哪里。数据库设置是什么?我在本地主机上试过了。我不知道所有文件上传到哪里。什么是数据库设置?