我们有以下代码,允许我们的管理员用户将图像上传到目录$folder:
echo ' <form action="admin.php" method="post" enctype="multipart/form-data"> ';
echo ' File: <input type="file" name="filename" />';
echo ' <input type="submit" value="Upload" />';
echo ' </form>';
$folder = "/home/imageupload/images/";
if (is_uploaded_file($HTTP_POST_FILES['filename']['tmp_name']))
{
if (move_uploaded_file($HTTP_POST_FILES['filename']['tmp_name'], $folder.$HTTP_POST_FILES['filename']['name']))
{
echo "File uploaded: " . $HTTP_POST_FILES['filename']['name'];
}
else
{
echo "File not moved to destination folder. Check permissions";
}
}
else
{
Echo "File is not uploaded.";
}
他们上传的这张图片稍后将关联到一个项目(通过用户),此时,我们需要显示图像的缩略图版本,以及出现在灯箱中的全尺寸图像。
如何在上传缩略图时自动生成上传图像的较小副本,并考虑纵向和横向图像,因为两者都需要不同大小的缩略图?过去,我注意到仅使用 html 调整原始图像的大小会减慢网站的速度,因为图像仍然很大(例如图像高度 = 100px,图像宽度 = 80px)。
有一些免费的php脚本可以很好地做到这一点:
- http://www.zubrag.com/scripts/website-thumbnail-generator.php(我们已经测试过,很简单)
- http://phpthumb.sourceforge.net/(我们尚未测试)
您可以下载它并根据您的使用情况进行调整。一项非常耗时的工作...
转到此链接:
http://www.developphp.com/view.php?tid=1304
它的简单,易于理解和安全性也被考虑在上面的链接中上传图像。理解和部署代码:)不会超过 20 分钟。底部还给出了完整的代码。