没有显示正确的表单标签

时间:2012-06-11 18:52:49

标签: php forms codeigniter

我很难调试以找到问题。 我尝试回复$login_by_username$login_by_email,但他们没有回应。

问题是当它加载登录表单时,它总是将电子邮件作为标签。

控制器:

$login_by_username = $this->config->item('login_by_username', 'config1');
$login_by_email = $this->config->item('login_by_email', 'config1');
$this->data['login_by_username'] = $login_by_username;
$this->data['login_by_email'] = $login_by_email;

查看:

<?php
if ($login_by_username AND $login_by_email) 
{
    $login_label = 'Email or Username';
} 
else if ($login_by_username) 
{
    $login_label = 'Username';
} 
else 
{
    $login_label = 'Email';
}
?>
<?php echo form_label($login_label, 'login'); ?>

配置:

$config['login_by_username'] = TRUE;
$config['login_by_email'] = TRUE;

2 个答案:

答案 0 :(得分:1)

根据我们的评论。

您已使用autoload.php来调用配置文件。

您进行了一些测试,以确保问题出在您的config1.php文件中,而不是CI

我做了一个测试,这就是我做的。

我在config1.php内创建了一个文件application/config

这是:

<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');


$config['teste'] = 'config1 test';

在我的autoload.phpapplication/config

$autoload['config'] = array('config1');

我的家庭控制器:

public function index()
{
    $data = array('config'=>$this->config->item('teste'));
    $this->load->view('welcome_message', $data);
}

我的观点:

<?php echo $config;?>

config1 test按预期回应。

答案 1 :(得分:0)

  1. 确保login_by_username文件中包含login_by_emailconfig1.php配置项

  2. 确保在加载视图时传递$this->data,例如:

    $ this-&gt; load-&gt; view('view.php',$ this-&gt; data)