本文实例讲述了php实现从上传文件创建缩略图的方法。分享给大家供大家参考。具体实现方法如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
<?php 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> |
希望本文所述对大家的php程序设计有所帮助。