Jquery uploadify is an Ajax-style batch Image Upload plug-in. It is very convenient to use jquery uploadify in PHP. Please follow the methods and steps described in this article, add the jquery uploadify plug-in to the batch upload image function for your PHP program.
This article is based on dilicms and adds the image upload function for it.
1. Add a new dili_fieldtypes field in the data table: k => image, V => image Upload area (VACHAR );
2. Modify application/libraries/dili/Field_behavior.php and add the following code to the switch:
1 case 'image ':
2 $ field = array (
3 'type' => 'varchar ',
4 'straint' => 255,
5 'default' =>''
6 );
7 break;
3. Modify application/libraries/dili/Form. php and add the following code:
1 function _ image ($ fileld, $ default ){
2 // $ type = 'Type = den ';
3 // $ width = ($ field ['width']? $ Field ['width']: '000000'). 'px ;';
4 // $ height = ($ field ['height']? $ Field ['height']: '000000'). 'px ;';
5 return;
6}
4. Add the judgment code in content_form.php and category_content_form.php:
01
02 if ($ v ['type'] = "image "):
03?>
04
05
06
07 upload
08 cancel upload
09
10 "value =" "/>
11 "value =" "/>
12 asset/js/uploadify/uploadify.css "type =" text/css "rel =" stylesheet "/>
13
14
42
6. Create the photo. php file:
01
02if (! Defined ('basepath') exit ('no direct script access allowed ');
03date_default_timezone_set ('Asia/Shanghai ');
04 class Photo extends Front_Controller {
05 public function _ construct ()
06 {
07 parent ::__ construct ();
08}
09 function _ getFilePath ()
10 {
11 $ path = "attachments/". date ("Y ")."/";
12 if (! File_exists ($ path )){
13 mkdir ($ path, '20140901 ');
14}
15 $ path. = date ("m ")."/";
16 if (! File_exists ($ path )){
17 mkdir ($ path, '123 ');
18}
19 return $ path;
20}
21 function _ creat_photothumbs ($ FileName, $ setW ){
22 $ IMGInfo = getimagesize ($ FileName );
23 if (! $ IMGInfo) return false;
24 if ($ IMGInfo ['mime '] = "image/pjpeg" | $ IMGInfo ['mime'] = "image/jpeg "){
25 $ ThisPhoto = imagecreatefromjpeg ($ FileName );
26} elseif ($ IMGInfo ['mime '] = "image/x-png" | $ IMGInfo ['mime'] = "image/png "){
27 $ ThisPhoto = imagecreatefrompng ($ FileName );
28} elseif ($ IMGInfo ['mime '] = "image/gif "){
29 $ ThisPhoto = imagecreatefromgif ($ FileName );
30}
31 $ width = $ IMGInfo ['0'];
32 $ height = $ IMGInfo ['1'];
33 $ scale = $ height/$ width;
34 $ nw = $ setW;
35 $ nh = $ nw * $ scale;
36 $ NewPhoto = imagecreatetruecolor ($ nw, $ nh );
37 imagecopyresampled ($ NewPhoto, $ ThisPhoto, 0, 0, 0, $ nw, $ nh, $ width, $ height );
38 ImageJpeg ($ NewPhoto, $ FileName );
39 return true;
40}
41 function _ savephoto_post (){
42 $ dest_dir = $ this-> _ getFilePath ();
43 if (! Empty ($ _ FILES )){
44 $ date = date ('ymmd ');
45 // $ dest_dir = $ this-> _ getFilePath ();
46 $ photoname = $ _ FILES ["Filedata"] ['name'];
47 $ phototype = $ _ FILES ['filedata'] ['type'];
48 $ photosize = $ _ FILES ['filedata'] ['SIZE'];
49 $ fileInfo = pathinfo ($ photoname );
50 $ extension = $ fileInfo ['extension'];
51 $ newphotoname = date ("YmdHis"). mt_rand (values, 99999). '.'. $ extension;
52 $ dest = $ dest_dir. $ newphotoname;
53 // move_uploaded_file ($ _ FILES ['filedata'] ['tmp _ name'], iconv ("UTF-8", "gb2312", $ dest ));
54 move_uploaded_file ($ _ FILES ['filedata'] ['tmp _ name'], $ dest );
55 // chmod ($ dest, 0755 );
56 // crop if the width is greater than 600
57 $ arr = getimagesize ($ dest );
58 if ($ arr [0] & gt; 600 ){
59 $ thumb_w = 600;
60 $ this-> _ creat_photothumbs ($ dest, $ thumb_w );
61}
62 // generate a thumbnail
63 $ config2 ['image _ library'] = 'gd2 ';
64 $ config2 ['source _ image'] = $ dest;
65 $ config2 ['create _ thumb'] = TRUE;
66 $ config2 ['maintain _ ratio '] = TRUE;
67 $ config2 ['width'] = 170;
68 $ config2 ['height'] = 150;
69 $ config2 ['master _ dim'] = "width ";
70 $ config2 ['thumb _ marker'] = "_ 1 ";
71 $ this-> load-> library ('image _ lib', $ config2 );
72 $ this-> image_lib-> resize ();
73 echo $ dest;
74}
75}
76}
77?>
Okay, you can test it.