Cам файл add (fields_add)
<?php class actionSportFieldsAdd extends cmsAction { public function run(){ // Загружаем товар из базы $sport = $this->model->getSport($id); // Загружаем структуру формы (см. главу "Формы") $form = $this->getForm('field'); // Кнопка 'submit' нажата? $is_submitted = $this->request->has('submit'); if ($is_submitted) { // Следующие действия будут выполнены только если данный код был вызван, // в ответ на отправку формы из шаблона на сервер: // Получение и парсинг данных из формы $data = $form->parse($this->request, $is_submitted); // Валидизируем данные $errors = $form->validate($this, $data); // Если в форме найдены ошибки, // то $errors будет содержать массив вида 'поле' => 'текст ошибки' // Если ошибок нет, $errors будет содержать false // Если форма прошла валидацию if (!$errors) { // Сохраняем изменённые данные в базе данных $this->model->addSport($id, $data); // Перенаправляем на просмотр изменённого товара } } // Передача товара из формы в шаблон 'do' => 'add', 'sport' => $sport, 'form' => $form, 'errors' => $errors )); } }
Ошибки:
Notice: Undefined variable: id in C:\OpenServer\domains\localhost\system\controllers\sport\backend\actions\fields_add.php on line 8
Warning: Missing argument 1 for formSportField::init(), called in C:\OpenServer\domains\localhost\system\core\form.php on line 580 and defined in C:\OpenServer\domains\localhost\system\controllers\sport\backend\forms\form_field.php on line 5
Notice: Undefined variable: errors in C:\OpenServer\domains\localhost\system\controllers\sport\backend\actions\fields_add.php on line 46
Notice: Undefined variable: field in C:\OpenServer\domains\localhost\templates\default\controllers\sport\backend\field.tpl.php on line 24
Вот model.php
<?php class modelSport extends cmsModel { public function getSport($id){ $sport = $this->getItemById('sport', $id); $this->filterEqual('id', $id); return $sport; } public function getSports(){ return $this->get('sport'); } public function getSportsCount(){ return $this->getCount('sport'); } public function getSportField(){ return $this->get('sport'); } public function deleteSport($id){ return $this->delete('sport', $id); } public function updateSport($id, $sport){ return $this->update('sport', $id, $sport); } public function addSport($sport){ return $this->insert('sport', $sport); } }