Интеграция Aurigma Express в Zend
Прежде всего привет:).
Потратьте два дня, пытаясь интегрировать PHP-версию Aurigma Express.
Упоминания
Я использую Zend Framework.
Я не понимаю, почему код выглядит так плохо. Если вам нужна чистая версия, то это CodePad
Мне удалось сделать так, чтобы мысль была "видимой", но она не может сделать то, что должен делать upload.php.
Примечание: это в контроллере
function onFileUploaded($uploadedFile) {
$absGalleryPath = realpath($this->_path) . DIRECTORY_SEPARATOR;
$originalFileName = $uploadedFile->getSourceName();
$files = $uploadedFile->getConvertedFiles();
$sourceFile = $files[0];
if ($sourceFile){
$sourceFile->moveTo($absGalleryPath . $originalFileName);
}
}
public function uploadImagesAction(){
$this->_session->message = $this->_session->messages['message_backend_product_image_notification_succesfully_added']; require_once ROOT_PATH . "/Aurigma/ImageUploaderPHP/UploadHandler.class.php"; require_once ROOT_PATH . "/Aurigma/ImageUploaderPHP/UploadedFile.class.php"; $product_id = $this->_getParam('prod'); $product = Model_Product::getById($product_id); $this->_path = "http://rstcenter.com/forum/images/products/".$product['id']."/"; $uploadHandler = new UploadHandler(); $uploadHandler->saveFiles(realpath($this->_path)); $uploadHandler->setFileUploadedCallback('onFileUploaded'); $uploadHandler->processRequest();
}
Любые идеи приветствуются:). Спасибо за ваше время.
1 ответ
Поскольку в Zend Framework код размещен внутри класса контроллера, функция onFileUploaded больше не является глобальной функцией, а является членом класса. И обратный вызов должен быть добавлен как:
$uploadHandler->setFileUploadedCallback(array($this, 'onFileUploaded'));
См. http://php.net/manual/en/language.pseudo-types.php статью о обратных вызовах в PHP.