【发布时间】:2013-02-01 06:12:30
【问题描述】:
我有一个按钮,可以将背景图像上传到文件夹并将文件名保存到数据库,但我不知道如何在上传之前调整图像大小。其实我面临两个问题。 1 - 如何调整图像大小并上传。 2 - 如何将图像显示为具有不同尺寸的 div 的背景图像。
到目前为止我做了什么:
HTML
<div class="image_load_div">
<form id="imageform" enctype="multipart/form-data" method="post" action="upload.php">
<input name="photoimg" id="photoimg" type="file"/>
</form>
</div>
javascript
$("#imageform").ajaxForm().submit();
php - 上传文件
$valid_formats = array("jpg", "png", "gif", "bmp");
if(isset($_POST) and $_SERVER['REQUEST_METHOD'] == "POST") {
name = $_FILES['photoimg']['name'];
$size = $_FILES['photoimg']['size'];
if(strlen($name)) {
list($txt, $ext) = explode(".", $name);
if(in_array($ext,$valid_formats)) {
if($size<(1024*1024)) {
session_start();
$id = $_SESSION['QuestionId'];
$path = "/images/Img/".$id."_bg.".$ext;
if( move_uploaded_file($_FILES["photoimg"]["tmp_name"],$path) ) {
// Save the file name into database
}
else { echo "<script>alert('Upload failed');</script>"; }
else { echo "<script>alert('Image file size max 1 MB');</script>"; }
else { echo "<script>alert('Invalid file format..');</script>"; }
else { echo "<script>alert('Please select image..!');</script>"; exit; }
我想将图片保存为 height:408px;宽度:490px; 并且在显示图像时我想显示这个图像宽度:174px;高度:108px; IMP!在上传和显示时,需要考虑长宽比; 目前正在上传。
请帮我解决这个问题。谢谢。
【问题讨论】:
标签: php image image-resizing aspect-ratio