PDA

View Full Version : سوال: استفاده از کلاس highlight در توابع تغییر سایز عکس



ali 888
پنج شنبه 14 مهر 1390, 09:26 صبح
با سلام
چند روزی هست رو عکس کار میکنم,کار pic to pic و text to pic رو انجام دادم ولی در ریسایز کردن یه سوال برام بوجود اومد که در این قسمت <SPAN class=highlight>imagecreatefromjpeg</SPAN> باید این کلاس رو تعریف کنم یا در php.ini چیزیو فعال کنم.

(این سوال رو در چند تاپیک مطرح کردم ولی کسی جوابی نداد, تصمیم گرفتم این تاپیک رو بزنم شاید جوابی پیدا کنم)

blackmak
پنج شنبه 14 مهر 1390, 18:26 عصر
<span> یک تگ Html هستش وسط یهو php نوشتید ؟ کد کاملو بزارید ببینیم جریان چیه ؟

webnevis
جمعه 15 مهر 1390, 05:02 صبح
سلام
کلاس highlight !!!
شما مطمئنی دارید php کار میکنید؟!؟! اون چیزی که نوشتید مربوط به html و css هست.
تغییر سایز عکس هم کار ساده ای هست :
http://www.9lessons.info/2009/03/upload-and-resize-image-with-php.html

ali 888
دوشنبه 18 مهر 1390, 00:10 صبح
دوستان من میخوام php طول و اندازه رو بگیره , تغییرات سایز رو انجام بده و بعد فایل جدید رو آپلود کنه ,چند کد پیدا کردم که اینکار رو انجام میدن,مشکل اینجاست که مثل شما متوجه نمیشم چرا کد تولید مجدد عکس (imagecreatefromjpeg) رو وسط <span> نوشته..

اینم یه نمونه کد:
<?php ini_set("memory_limit", "200000000"); // for large images so that we do not get "Allowed memory exhausted"?>
<?php
// upload the file
if ((isset($_POST["submitted_form"])) && ($_POST["submitted_form"] == "image_upload_form")) {

// file needs to be jpg,gif,bmp,x-png and 4 MB max
if (($_FILES["image_upload_box"]["type"] == "image/jpeg" || $_FILES["image_upload_box"]["type"] == "image/pjpeg" || $_FILES["image_upload_box"]["type"] == "image/gif" || $_FILES["image_upload_box"]["type"] == "image/x-png") && ($_FILES["image_upload_box"]["size"] < 4000000))
{


// some settings
$max_upload_width = 2592;
$max_upload_height = 1944;

// if user chosed properly then scale down the image according to user preferances
if(isset($_REQUEST['max_width_box']) and $_REQUEST['max_width_box']!='' and $_REQUEST['max_width_box']<=$max_upload_width){
$max_upload_width = $_REQUEST['max_width_box'];
}
if(isset($_REQUEST['max_height_box']) and $_REQUEST['max_height_box']!='' and $_REQUEST['max_height_box']<=$max_upload_height){
$max_upload_height = $_REQUEST['max_height_box'];
}


// if uploaded image was JPG/JPEG
if($_FILES["image_upload_box"]["type"] == "image/jpeg" || $_FILES["image_upload_box"]["type"] == "image/pjpeg"){
$image_source = imagecreatefromjpeg($_FILES["image_upload_box"]["tmp_name"]);
}
// if uploaded image was GIF
if($_FILES["image_upload_box"]["type"] == "image/gif"){
$image_source = imagecreatefromgif($_FILES["image_upload_box"]["tmp_name"]);
}
// BMP doesn't seem to be supported so remove it form above image type test (reject bmps)
// if uploaded image was BMP
if($_FILES["image_upload_box"]["type"] == "image/bmp"){
$image_source = imagecreatefromwbmp($_FILES["image_upload_box"]["tmp_name"]);
}
// if uploaded image was PNG
if($_FILES["image_upload_box"]["type"] == "image/x-png"){
$image_source = imagecreatefrompng($_FILES["image_upload_box"]["tmp_name"]);
}


$remote_file = "image_files/".$_FILES["image_upload_box"]["name"];
imagejpeg($image_source,$remote_file,100);
chmod($remote_file,0644);



// get width and height of original image
list($image_width, $image_height) = getimagesize($remote_file);

if($image_width>$max_upload_width || $image_height >$max_upload_height){


$new_width = $max_upload_width;
$new_height = $max_upload_height;



$new_image = imagecreatetruecolor($new_width , $new_height);
$image_source = imagecreatefromjpeg($remote_file);

imagecopyresampled($new_image, $image_source, 0, 0, 0, 0, $new_width, $new_height, $image_width, $image_height);
imagejpeg($new_image,$remote_file,100);

imagedestroy($new_image);
}

imagedestroy($image_source);


header("Location: submit.php?upload_message=image uploaded&upload_message_type=success&show_image=". $_FILES["image_upload_box"]["name"]);
exit;
}
else{
header("Location: submit.php?upload_message=make sure the file is jpg, gif or png and that is smaller than 4MB&upload_message_type=error");
exit;
}
}
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Image Upload with resize</title>
<style type="text/css">
<!--
body,td,th {
font-family: Arial, Helvetica, sans-serif;
color: #333333;
font-size: 12px;
}

.upload_message_success {
padding:4px;
background-color:#009900;
border:1px solid #006600;
color:#FFFFFF;
margin-top:10px;
margin-bottom:10px;
}

.upload_message_error {
padding:4px;
background-color:#CE0000;
border:1px solid #990000;
color:#FFFFFF;
margin-top:10px;
margin-bottom:10px;
}

-->
</style></head>

<body>

<h1 style="margin-bottom: 0px">Submit an image</h1>


<?php if(isset($_REQUEST['upload_message'])){?>
<div class="upload_message_<?php echo $_REQUEST['upload_message_type'];?>">
<?php echo htmlentities($_REQUEST['upload_message']);?>
</div>
<?php }?>


<form action="submit2.php" method="post" enctype="multipart/form-data" name="image_upload_form" id="image_upload_form" style="margin-bottom:0px;">
<label>Image file, maximum 4MB. it can be jpg, gif, png:</label>
<input name="image_upload_box" type="file" id="image_upload_box" size="40" />
<input type="submit" name="submit" value="Upload image" />





<label>Scale down image? (2592 x 1944 px max):</label>

<input name="max_width_box" type="text" id="max_width_box" value="1024" size="4">
x

<input name="max_height_box" type="text" id="max_height_box" value="768" size="4">
px.


<p style="padding:5px; border:1px solid #EBEBEB; background-color:#FAFAFA;">
<strong>Notes:</strong>
The image will not be resized to this exact size; it will be scalled down so that neider width or height is larger than specified.
When uploading this script make sure you have a directory called &quot;image_files&quot; next to it and make that directory writable, permissions 777.
After you uploaded images and made tests on our server please <a href="delete_all_images.php">delete all uploaded images </a> :)
</p>



<input name="submitted_form" type="hidden" id="submitted_form" value="image_upload_form" />
</form>




<?php if(isset($_REQUEST['show_image']) and $_REQUEST['show_image']!=''){?>
<p>
<img src="image_files/<?php echo $_REQUEST['show_image'];?>" />
</p>
<?php }?>




</body>
</html>