Представление Codeigniter загружается в одно представление, но не в другое - PullRequest
0 голосов
/ 07 октября 2011

У меня есть sidebar.php в моей папке просмотров. Содержит этот код:

<div class="title_box">
    Login
</div>
<div class="border_box">
    <div style="height:150px">
        <br/>
        <?php echo form_open('login'); ?>
        <strong>Username:</strong> <input type="text" name="username" size="13"/><br/>
        <strong>Password:</strong> <input type="password" name="password" size="13"/><br/>
        <div class="login_button">
            <p><input type="image" src="/igniter/assets/images/login.gif" name="login"></p>
        </div>
        </form>
        <div class="forgot_name">
            <br/>
            <a href="">Forgot username or password?</a>
        </div>
    </div>
</div>

У меня есть два других взгляда. index.php и registration.php.

В registration.php, в соответствующем пункте, я делаю:

$this->load->view('sidebar')

Он загружает мою боковую панель точно так, как и ожидалось на моей странице регистрации.

Но этот же код в представлении index.php выдает ошибку и отказывается показывать боковую панель.

Это ошибка, которую я получаю:

codeigniter error

1 Ответ

2 голосов
/ 07 октября 2011

Вам нужно загрузить помощник формы или библиотеку form_validation (которая автоматически включает помощника формы и URL) в контроллер, вызывающий эти представления (или одно из них, поскольку представления буферизуются, так что вы можете вызывать одно внутри другого и иметь такие же доступные в наличии).

Ошибка означает, что функция form_open (), которая находится внутри помощника формы, не загружается.

Спасибо @Robin Castlin за пример кода. В ваш контроллер загрузите

$this->load->helper('form');

ИЛИ просто

$this->load->library('form_validation');

Вы можете загрузить свои взгляды.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...