Что делать, если не видит переменную?
0
Вроде делаю всё правильно, но выдаёт такую ошибку:
Message: Undefined variable: eag
контроллер:
public function view($slug = NULL) {
$this->data['news_item'] = $this->News_model->getNews($slug);
if (empty($this->data['news_item'])) {
show_404();
}
$this->data['eag'] = $this->data['news_item']['eag'];
$this->data['gender'] = $this->data['news_item']['gender'];
$this->data['hobbi'] = $this->data['news_item']['hobbi'];
$this->load->view('templeates/header', $this->data);
$this->load->view('templeates/menu', $this->data);
$this->load->view('templeates/footer');
}
модель:
public function getNews($slug = FALSE) {
if ($slug === FALSE) {
$query = $this->db->get('information');
return $query->result_array();
}
$query = $this->db->get_where('information', array('slug' => $slug));
return $query->row_array();
}
И сам html:
<!-- menu start -->
<?php if(!$this->dx_auth->is_logged_in()): ?>
<div class="col-lg-3">
<div class="menu_one">
<h4><?php echo 'Зарегестрируйтесь или войдите в систему'; ?></h4>
<hr>
<div class="info">
<p><b><?php echo 'Здесь может быть ваша фотография'; ?></b></p>
</div>
<div class="info">
<div class="info_color">
<h4>Обо мне:</h4>
</div>
<h2><?php echo 'Что же тут может появиться когда вы не с нами?'; ?></h2>
<div class="margin-8"></div>
<p ><b><a class="btn btn-info" href="/vhod/">Войти</a></b></p>
</div>
</div>
<div class="margin-8"></div>
</div>
<?php else: ?>
<div class="col-lg-3">
<div class="menu_one">
<div class="ava">
<img src="/assets/img/ava.jpg" alt="" class="post_img">
</div>
<hr>
<div class="info">
<p><b>Сменить фото страницы</b></p>
</div>
<div class="info">
<div class="info_color">
<h4>Обо мне:</h4>
</div>
<button class="btn btn-link">редактировать</button>
<form action="/news/edit/" method="post">
<input hidden type="input" name="slug" value="info_user-1">
<input hidden class="hidden" type="input" name="user_id" value="<?php echo $this->dx_auth->get_user_id(); ?>">
<p><b>Возраст: <?php echo $eag; ?> </p>
<input type="text" name="eag" value=""></b>
<p><b>Пол:</p>
<input type="text" name="gender" value=""></b>
<p><b>Хобби: </p>
<input type="text" name="hobbi" value=""></b>
<button class="btn btn-outline-success">отправить</button>
</form>
</div>
</div>
<div class="margin-8"></div>
<div class="menu_two">
<div class="info">
<div class="info_color">
<h3>Что нового?</h3>
</div>
<!--Тоже форма в Codeigniter-->
<div class="my_info">
<p>Инфо</p>
</div>
</div>
</div>
</div>
<?php endif; ?>
<!-- menu end -->
2 ответов
0
Я в вашем коде вообще не вижу вызов переменной god. Может быть вы эту переменную в других контроллерах вызываете?
0
В методе function view напишите после кода
$this->data['news_item'] = $this->News_model->getNews($slug);
следующий код:
echo "<pre>";
var_dump($this->data['news_item'] );
echo "</pre>";
die();
Вывод сюда покажите. Я подозреваю, что у вас нет в базе поля eag.