Codeigniter表单元素作为表

时间:2013-12-31 17:11:46

标签: html codeigniter

我正在尝试在Codeigniter中构建一个表单,以便它的元素是表的一部分,因此很好地对齐。这是视图页面:

<div id="login">
<h3>Log in</h3>

<?php

$attributes = array('id'=>'form_login');

echo validation_errors();

echo form_open('login/main', $attributes);

//probably a bad idea to load libraries in views, but what the heck?!
$this->load->library('table');
$this->table->add_row('Username', form_input('username'));
echo $this->table->generate();
//echo 'Username: ';
//echo form_input('username') . '</br>';

echo 'Password: ';
echo form_password('password') . '</br>';

echo form_submit('submit', 'Log in');
?>

<br/><br/>

<a href="#">Forgot Password</a> <br/>
<a href="#">New User? Register</a>
</div>

这两行评论说是早些时候的。现在我收到以下错误:在非对象上调用成员函数add_row()。为什么是非对象?我已经尝试在控制器中加载库但错误仍然存​​在。请帮忙!

1 个答案:

答案 0 :(得分:1)

在codeigniter中,全局codeigniter对象在您的视图中不可用,因此您必须获得对它的引用。

尝试以下

$ci =& get_instance();

将它放在顶部,并将您的电话替换为$ this:

$ci->load->library('table');
$ci->table->add_row('Username', form_input('username'));
echo $ci->table->generate();