2013-02-11 4 views
1

Я использую загрузку jquery в CakePHP, и у меня возникают проблемы с $ _SESSION, так как у меня есть действие ниже, которое получает идентификатор пользователя по параметрам $ this-> request-> params [ 'named'] ['uid'] проблема заключается в том, что с активированным действием uploadize выполняется дважды, но утеряны второй параметр $ this-> request-> params ['named'] ['uid'].Uploadify do action run дважды

Ниже приведен код, упрощенный для лучшего понимания.

FilesController.php/индекс ** работает дважды

public function index() { 
     $id = $this->request->params['named']['uid']; 
     $us = $this->User->findById($id)['User']; 
     $dir = UPLOAD_DIR . $us['id'] . '/'; 
     CakeSession::write('Files.atual', $dir); 
     $this->set('u', $us); 
     //$this->autoRender = false; 
} 

Просмотров/Элементы/up.ctp // Включение Uploadify

<?php $timestamp = time(); ?> 
    $(function() { 
     $('#file_upload').uploadify({ 
      'formData'  : { 
       'timestamp' : '<?php echo $timestamp; ?>', 
       'token'  : '<?php echo md5('unique_salt' . $timestamp); ?>' 
      }, 
      'swf'  : '<?= $this->request->webroot; ?>uploadify.swf', 
      'preventCaching' : false, 
      'uploader' : '<?= $this->request->webroot; ?>uploadify.php?session_id=<?php echo(session_id()); ?>', 
      'buttonClass' : 'button icon-paperclip', 
      'buttonText' : 'Enviar Arquivos', 
      'onUploadSuccess' : function(file, data, response) { 
       $('.files-icons').load('<?= $this->request->webroot; ?>files/reload/<?= $u['id'] ?>'); 
      } 
     }); 
    }); 

ответ

0

двойной запрос на ваши действия загрузки вызвана ошибкой в свойстве button_background_url uploadify. Вы можете установить собственное фоновое изображение, которое останавливает дополнительный запрос к тому, чтобы ваши действия, установив это в .uploadify конфигурации:

'button_image_url': '/img/cake.icon.png', 

Просто в качестве примера. Возможно, вы захотите установить его нулевым или другим фоновым изображением.