Logo
Create thumb from uploading photo
Online Now: 0

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

Snippet Code
Creates a thumbnail image when a photo is uploaded to your site.
<?
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_name100)){    
        
$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_name100))
      {}
           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>
 
Snippet Comments

Add Your Comment

Anonymous
2010-02-20 00:00:00
action="thisfile.php?action=add" not working
Anonymous
2009-06-04 00:00:00
Too bad Parse error: syntax error, unexpected T_STRING in /var/www/thumb.php on line 14

Add Your Comment

 
Snippet Tools
Rate this Snippet:

Rate the difficulty level:

Request Snippet Update


Suggested Difficulty Level: Advanced
Current Score: 2.45
Total votes: 22
Total Views: 5745

Other top snippets by phpguru:

Search

Input key terms:
User Panel

User name:

Password:

Register And Post Your Own Snippets

Snippets On Watch

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)

New Snippets

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)

Home | Forum | Free PHP Web Hosting | Contact | Terms & Conditions |  
Donate
PHPSnips.com - ©2010