The good news:
- I don't care if it uses ajax or not.
- I don't care if the user must install a specific browser to make it work.
- I don't care if there isn't any specifc progress bar.
The bad news:
- I don't want to use flash.
T开发者_如何学运维he user must upload a file from any width or height - however no bigger then 8MB. The file must be stored on a specific folder (or database column). A thumbnail must be generated on a specific folder (or database column).
Those images must be associated with a specific record.
This is a "modus operandi" question, I realise that there is to much code involved here.
So:
- We first create our form element to support multiple upload, like this: - $element = new Zend_Form_Element_File('multifile'); $element->setAttrib('multiple', true); $element->setIsArray(true);
- We then, need to add some validations and allowed extensions; 
- Then we need to process the upload;
- Once the upload is done, we need to resize those multiple files according to our needs.
- We need to store those resized files somewhere else.
- Once all this is done, we are ready to display the files associated with a specific database record?
Is this the way to go? Should I have more steps? Am I missing something. I've never done this before, but I'm taking it like a challenge.
First, you create a form. Not much complication here:
$this->addElement('File','Filedata');
$this->Filedata
    ->setLabel('Select images')
    ->setDestination('somepath') //define & create it somewhere earlier ;)
    ->addValidator('Size', false, 1024000)
    ->addValidator('Extension', false, 'jpg,png,gif')
    ->setMultiFile(5)
    ->addValidator('Count', false, array('min'=>0,'max' => 5))
;
In the controller, you receive the images. They will have temporary random names, which you can keep later if you wish (I usually do).
$fileinfo = $form->Filedata->getFileInfo();
$path = 'somepath'; //make sure it exists
for($i=0;$i<5;$i++) {
    if($fileinfo['Filedata_'.$i.'_']['tmp_name']) {
        $img = new Imagick($fileinfo['Filedata_'.$i.'_']['tmp_name']);
        // image processing goes here
        file_put_contents('somepath',$img);
    }
}
And that's it ;)
 
         
                                         
                                         
                                         
                                        ![Interactive visualization of a graph in python [closed]](https://www.devze.com/res/2023/04-10/09/92d32fe8c0d22fb96bd6f6e8b7d1f457.gif) 
                                         
                                         
                                         
                                         加载中,请稍侯......
 加载中,请稍侯......
      
精彩评论