Cakephp, в форму не передается идентификаторPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Cakephp, в форму не передается идентификатор

Сообщение Anonymous »

У меня есть две формы: одна для редактирования сведений о комнате, а другая — для редактирования дополнительных сведений. В формах я загружаю файл и передаю идентификатор. По какой-то причине требуется URL-адрес, а идентификатор не передается. Оба имеют одинаковый код. Понятно, почему они разные.

Форма помещения






Загрузка комнаты

Form->create('Room', array( 'type' => 'file'));?>







Upload
Upload files




Форма «Дополнительно»






Загрузка дополнительных материалов

Form->create('Upgrade', array( 'type' => 'file','url'=>'/admin/upgrades/addfiles','id'=>'AddOnAdminAddfilesForm'));?>







Upload
Upload files


Javascript в каждой форме:


$(document).ready(function() {

$("div#uploader").resloader();
$("div#uploader").load('/admin/upgrades/addfiles/',null,function(){}).fadeIn();


Контроллер обновлений

function admin_addfiles($id = null) {
$this->layout = null;

if (!$id && empty($this->data)) {
$this->Session->setFlash(__('Invalid Add On', true));
$this->redirect(array('controller' => 'upgrades', 'action' => 'index'));
}

if (!empty($this->data)) {
$this->layout = null;
//if(empty($this->data['AddOn']['id'])){unset($this->data['AddOn']);}

// restructure data for uploader plugin // NEED TO GET RID OF THIS ? MOVE IT
$tmp_file = $this->data['Attachment'][0]['file'];
$tmp_file['extension'] = array_reverse(explode('.', $tmp_file['name']));
$tmp_file['extension'] = $tmp_file['extension'][0];
$tmp_file['title'] = strtolower(substr($tmp_file['name'],0,(0-strlen('.'.$tmp_file['extension']))));
$this->data['Attachment'][0]['alternative'] = ucwords(str_replace('_',' ', $tmp_file['title']));

if ($this->AddOn->saveAll($this->data, array('validate' => 'first'))) {

$id = $this->AddOn->Attachment->getLastInsertID();
$att = $this->AddOn->Attachment->query("SELECT * from attachments WHERE id = ".$id);
$this->set('attachment',$att[0]['attachments']);

} else {
$tmp_file['name'] = 'INVALID FILE TYPE';
}

//debug($this->data);
$this->set('file', $tmp_file);
$this->RequestHandler->renderAs($this, 'ajax');
$this->render('../elements/ajax');

}

if (empty($this->data)) {
$this->data = $this->AddOn->read(null, $id);
}

}

}


Подробнее здесь: https://stackoverflow.com/questions/742 ... ed-to-form
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»