A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Snippets Functions Classes
Home | PHP Resources | MySQL Zipbase | Forums
<?
if ($_REQUEST['action']=="add"){
$userfile = $HTTP_POST_FILES['photo']['tmp_name'];
$userfile_name = $HTTP_POST_FILES['photo']['name'];
$userfile_size = $HTTP_POST_FILES['photo']['size'];
$userfile_type = $HTTP_POST_FILES['photo']['type'];
/////////////////////////
//GET-DECLARE DIMENSIONS //
$dimension = getimagesize($userfile);
$large_width = $dimension[0]; // GET PHOTO WIDTH
$large_height = $dimension[1]; //GET PHOTO HEIGHT
$small_width = 120; // DECLARE THUMB WIDTH
$small_height = 90; // DECLARE THUMB HEIGHT
/////////////////////////
//CHECK SIZE //
if ($userfile_size>102400){
$error=1;
$msg = "The photo is over 100kb. Please try again.";
}
////////////////////////////////
// CHECK TYPE (IE AND OTHERS) //
if ($userfile_type="image/pjpeg"){
if ($userfile_type!="image/jpeg"){
$error=1;
$msg = "The photo must be JPG";
}
}
//////////////////////////////
//CHECK WIDTH/HEIGHT //
if ($large_width!=600 or$large_height!=400){
$error=1;
$msg = "The photo must be 600x400 pixels";
}
///////////////////////////////////////////
//CREATE THUMB / UPLOAD THUMB AND PHOTO ///
if ($error<>1){
$image = $userfile_name; //if you want to insert it to the database
$pic = imagecreatefromjpeg($userfile);
$small = imagecreatetruecolor($small_width,$small_height);
imagecopyresampled($small,$pic,0,0,0,0, $small_width, $small_height, $large_width, $large_height);
if (imagejpeg($small,"path/to/folder/to/upload/thumb".$userfile_name, 100)){
$large = imagecreatetruecolor($large_width,$large_height);
imagecopyresampled($large,$pic,0,0,0,0, $large_width, $large_height, $large_width, $large_height);
if (imagejpeg($large,"path/to/folder/to/upload/photo".$userfile_name, 100))
{}
else {$msg="A problem has occured. Please try again."; $error=1;}
}
else {
$msg="A problem has occured. Please try again."; $error=1;
}
}
//////////////////////////////////////////////
/// If everything went right a photo (600x400) and
/// a thumb(120x90) were uploaded to the given folders
}
?>
<html><head><title>create thumb</title></head>
<body>
<form name="form1" enctype="multipart/form-data" action="thisfile.php?action=add" method="post">
Select Photo: <input type="file" name="photo">
<input type="submit" name="submit" value="CREATE THUMB AND UPLOAD">
</form>
</body
</html>
Suggested Difficulty Level: Advanced
Current Score: 2.45
Total votes: 22
Total Views: 5745
Other top snippets by phpguru:
1. Auth Class with (2.83 of 87)
2. Test Please Delete (2.83 of 30)
3. Return all repeated (3.64 of 72)
4. Convert an integer (3.3 of 71)
5. URL Shortening for (2.75 of 52)
6. Monthly Content Sorting (3 of 45)
7. Show String Trimmed (2.97 of 65)
8. Human readable file (2.01 of 70)
9. Randomize array values (2.8 of 82)
10. Create a recursive (3.35 of 55)
1. Parse RFC822 date (4 of 1)
2. Dynamic Image Uploading (5 of 1)
3. Spam Filter (0 of 0)
4. Is Multiple (0 of 0)
5. Base64 Encode / (0 of 0)
6. URL Encode / (0 of 0)
7. temp openbills (0 of 0)
8. Php Iban Validator (0 of 0)
9. Mysql Table Builder (0 of 0)
10. File size of (1.75 of 4)
11. Mail from your (1 of 1)
12. OddEven Class (0 of 0)
13. Detect if a (1 of 1)
14. MB CopyMCF-DIR :: (5 of 1)
15. Upper/Lower Case Accented (0 of 0)
16. Zodiac Signs (3 of 1)
17. Really useful code (2.5 of 2)
18. Calculate Central European (0 of 0)
19. Email Attachment (4 of 1)
20. ImageMagick Image Upload (0 of 0)
21. convert plain html (2 of 2)
22. Tag Builder (3.25 of 4)
23. Get Inserted ID (4.33 of 3)
24. Watermark An Image (3.33 of 3)
25. Check Prime Numbers (1.5 of 8)
2010-02-20 00:00:00