cakephp-2.4:Image directory not sending after applying jshelper ajax submission

僤鯓⒐⒋嵵緔 提交于 2019-12-12 02:16:13

问题


Here cakephp image upload working fine without ajax.After using ajax, data is inserted without image directory.

Here is my model code

public function processCoverUpload($check = array()) {
            if (!is_uploaded_file($check['product_image']['tmp_name'])) {
                return FALSE;
            }
            if (!move_uploaded_file($check['product_image']['tmp_name'], WWW_ROOT . 'img' . DS . 'uploads' . DS . $check['product_image']['name'])) {
                return FALSE;
            }
            $this->data[$this->alias]['product_image'] = 'uploads/'. $check['product_image']['name'];
            return TRUE;
        }

Here the controller

if ($this->request->is('post')) {
            $this->MadProduct->create();

            $data = $this->request->data['MadProduct'];
                        if (!$data['product_image']['name']) {
                            unset($data['product_image']);
                        }
            if ($this->MadProduct->save($data)) {
                $this->Session->setFlash(__('The mad product has been saved.'));
                return $this->redirect(array('action' => 'index'));
            } else {
                $this->Session->setFlash(__('The mad product could not be saved. Please, try again.'));
            }
        }

Here is the view file field

echo $this->Form->input('product_image',array('type' => 'file','label' => false,));

Here is the js submission button

 <?php  echo $this->Js->submit('Submit',array(
        'before'=>$this->Js->get('#sending')->effect('fadeIn',array('speed' => 'slow')),
        'success'=>$this->Js->get('#sending')->effect('fadeOut',array('speed' => 'slow')),
         'class' => 'btn btn-danger',
         'style'=>'width:45%;margin-top:1%;height:30px;')
         );   
  ?>

How I will send image directory by jshelper ?


回答1:


The JS helper doesn't support file uploads, which would require making use of the "new" XHR2 features.

You could extend the JS helper/engine and add support for files, but since the JS helper is deprecated anyways, I'd suggest to simply make use of JavaScript directly. There are more than enough examples out there showing how to upload files via AJAX.

How can I upload files asynchronously?



来源:https://stackoverflow.com/questions/26647018/cakephp-2-4image-directory-not-sending-after-applying-jshelper-ajax-submission

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!