@Dmitriy-Kim

Как объявить переменную dates?

Добрый день!

Я добавил переменную dates во views
<div class="content-up">
	<a class="btn btn--add" href="/admin/imaps/add">Добавить материал</a>
</div>
<table class="table">
	<thead class="thead">
		<tr>
			<th>ID</th><th>Наименование</th><th>Частота сигнала</th><th>Дата ввода</th><th>Редактировать</th><th>Удаление</th>
		</tr>
	</thead>
	<?php foreach ($data as $item) : ?>
		<tr>
			<td><?= $item['Imap']['id']; ?></td>
			<td><?= $item['Imap']['title']; ?></td>
			<td><?= $item['Imap']['frequency']; ?></td>
			<td><?= $item['Imap']['dates']; ?></td>
			<td>
				<a href="/admin/imaps/edit/<?=$item['Imap']['id']?>">Редактировать</a>
			</td>
			<td>
			<?php echo $this->Form->postLink('Удалить', array('action' => 'admin_delete', $item['Imap']['id']), array('confirm' => 'Подтвердите удаление')); ?>	
			</td>
		</tr>
	<?php endforeach; ?>
</table>


Все это записывается в массив data и записывается в базу. Но я столкнулся с ошибкой
2020-08-05 09:27:54 Notice: Notice (8): Undefined index: dates in [/app/View/Imaps/admin_index.ctp, line 15]
Trace:


Вот код контролера
<?php

class ImapsController extends AppController{
	public function beforeFilter(){
		parent::beforeFilter();
	}
	// public $uses = array('Imap', 'Region');


	public function admin_index(){
		$data = $this->Imap->find('all');
		$this->set(compact('data'));
	}

	public function admin_add(){
		if($this->request->is('post')){
			$this->Imap->create();
			$data = $this->request->data['Imap'];
			if($this->Imap->save($data)){
				$this->Session->setFlash('Сохранено', 'default', array(), 'good');
				return $this->redirect($this->referer());
			}else{
				$this->Session->setFlash('Ошибка', 'default', array(), 'bad');
			}
		}
		$this->Imap->Region->locale = 'ru';
		$regions = $this->Imap->Region->find('list');
		$this->set(compact('title_for_layout', 'regions'));
	}

	public function admin_edit($id){

		if(is_null($id) || !(int)$id || !$this->Imap->exists($id)){
			throw new NotFoundException('Такой страницы нет...');
		}

		$data = $this->Imap->findById($id);

		if(!$id){
			throw new NotFoundException('Такой страницы нет...');
		}
		if($this->request->is(array('post', 'put'))){
			$this->Imap->id = $id;
			$data1 = $this->request->data['Imap'];
			$data1['id'] = $id;
			if($this->Imap->save($data1)){
				$this->Session->setFlash('Сохранено', 'default', array(), 'good');
				return $this->redirect($this->referer());
			}else{
				$this->Session->setFlash('Ошибка', 'default', array(), 'bad');
			}
		}
		//Заполняем данные в форме
		if($this->request->is('post')){
			$this->request->data = $data1;
			$data = $data1;
		}else{
			$data = $this->request->data = $this->Imap->read(null, $id);
		}
		$this->Imap->Region->locale = 'ru';
		$this->Imap->District->locale = 'ru';
		$this->Imap->Town->locale = 'ru';
		$regions = $this->Imap->Region->find('list');
		$districts = $this->Imap->District->find('list');
		$towns = $this->Imap->Town->find('list');
		$this->set(compact('id', 'data', 'regions','districts', 'towns'));
	}

	public function admin_delete($id){
		if (!$this->Imap->exists($id)) {
			throw new NotFounddException('Такой статьи нет');
		}
		if($this->Imap->delete($id)){
			$this->Session->setFlash('Удалено', 'default', array(), 'good');
		}else{
			$this->Session->setFlash('Ошибка', 'default', array(), 'bad');
		}
		return $this->redirect($this->referer());
	}

}


Подскажите как справится с Undefined index: dates ?
  • Вопрос задан
  • 83 просмотра
Пригласить эксперта
Ответы на вопрос 1
@d-sem
Во view не добавление переменной, а обращение к ней.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы