2015-10-02 2 views
4

В настоящее время я внедряю реализацию загрузки изображений с использованием CakePHP 1.3.Загрузка изображения на сервер с использованием CakePHP 1.3

Я использую dropzonejs библиотеку для обработки запроса загрузки и поста для сервера, документация для этой библиотеки состояний следующего:

реализация на стороне сервера

Dropzone не предоставляет сервер а способ загрузки файлов идентичен формам загрузки файлов:

<form action="" method="post" enctype="multipart/form-data"> 
<input type="file" name="file" /> 
</form> 

Я нашел код загрузки изображения, который выглядит так, как будто это сработает, однако Я не знаю, как получить запрос на отправку с помощью CakePHP 1.3.

Информация о моей установке

Выгрузка изображения находится на представлении: banners\admin_index.ctp Сайта URL для этого места является: site.com/admin/banners/

У меня есть контроллер с именем banners_controller.ctp, который имеет следующие функции :

  • admin_index() - который отображает вид
  • add() - Это использует $this->data для сохранения файлов с помощью uploadFile()
  • uploadFile() - Это загружает файл на сервер

В настоящее время не используется в add() и uploadFile() функции. Мне нужно выяснить, как обрабатывать почтовый запрос и направлять его на эти функции.

Полная версия моего кода может быть расположена here

На моем взгляде, я создаю форму, которые dropzone.js ссылки нравятся так:

<form action="add" class="dropzone" id="adropzone"></form> 

Когда форма действие установлено add, он дает ответ «Сервер ответил 0 кодом». Когда я смотрю на вкладке сети Chrome, есть запрос «admin/banners/add» и говорит (failed) net::ERR_BLOCKED_BY_CLIENT. Когда я посещаю эту страницу вручную, я получаю цикл переадресации: ERR_TOO_MANY_REDIRECTS.

Я вообще не очень хорошо знаком с CakePHP 1.3, однако мне необходимо добавить это на сайт, любая помощь или ссылки на внешние ресурсы были бы высоко оценены.

Спасибо.

+0

Все, что вы знаете о загрузке файлов с PHP в принципе применяется к CakePHP. У вас, похоже, уже есть рабочее решение - какая часть того, что вы делаете, является проблемой?Если вы отправляете свою форму на «banners/uploadFile», например, вы попадете в функцию 'uploadFile'. <- Вы, вероятно, не хотите, чтобы это произошло кстати. – AD7six

+0

Обычно у меня относительно мало знаний о PHP. Проблема в том, что я не уверен, как структура направляет запросы, и как я могу их использовать, в идеале я хотел бы, чтобы запрос был отправлен в функцию add(). Я использую форму с действием '/ file-upload'', означает ли это, что мне нужно, чтобы имя функции должно было быть ** загружать файлы **? –

+0

Это связано с [маршрутами] (http://book.cakephp.org/1.3/en/The-Manual/Developing-with-CakePHP/Configuration.html#routes-configuration), вы не можете назвать функцию 'file -upload', поскольку это ошибка анализа, но да, как работают стандартные маршруты. Если вы еще недавно не знакомы с CakePHP [сделайте учебник для блога] (http://book.cakephp.org/1.3/en/The-Manual/Tutorials-Examples.html), также обратите внимание, что 1.3 не является текущим версии, поэтому вы начинаете с чего-то старого или устаревшего. – AD7six

ответ

Смежные вопросы