有什么方法可以使用 PHP 将 HTML 表单的 WIDTH(仅限 PNG、JPG 和 GIF)发送的图像调整为最大值,比如说 500px(所以如果文件是 350px 宽,则没有任何拉伸),然后将其重命名为随机的 15 个字符名称(例如“e19gy675jo5el7g.png”)并将其保存到 image/ 目录?
我已经有一些代码,但它不会调整文件大小并允许上传所有文件类型(它只会将文件重命名为随机名称)。我不想在表单中使用 accept="image/*" HTML 代码,所以如果你能帮我找到一个很棒的 PHP 解决方案。
这是我的PHP代码...
<?php
function findexts ($filename)
{
$filename = strtolower($filename) ;
$exts = split("[/\\.]", $filename) ;
$n = count($exts)-1;
$exts = $exts[$n];
return $exts;
}
$ext = findexts ($_FILES['uploaded']['name']) ;
$ran = rand () ;
$ran2 = $ran.".";
$target = "image/";
$target = $target . $ran2.$ext;
if(move_uploaded_file($_FILES['uploaded']['tmp_name'], $target))
{
echo "The file has been uploaded as ".$ran2.$ext;
}
else
{
echo "Sorry, there was a problem uploading your file.";
}
?>
这是我的 HTML
<html>
<body>
<form enctype="multipart/form-data" action="upload.php" method="post">
<div>
<input name="uploaded" type="file" />
</div>
<br>
<button type="submit">Upload</button>
</form>
</body>
</html>
抱歉这个复杂的问题,我对 PHP 很陌生 :-)
提前致谢 :-)