0

我在我的viewregistration.php文件中使用它

<html>
<head>
<link rel="stylesheet" type="text/css" href="<?php echo $base_url; ?><?php echo $css; ?>reg_style.css" />
<link rel="stylesheet" type="text/css" href="<?php echo $base_url; ?><?php echo $css; ?>style.css" />
</head>
<body>
    <?php $this->load->view('include/header');?>
    <?php $this->load->view('registration_view.php');?>
    <?php $this->load->view('include/footer');?>
</body>
</html>

我在我的控制器中称它为

$data['title']= 'Registration';
$this->load->view("viewregistration.php", $data);

在我的控制器中,我正在使用

parent::__construct();

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

        $this->load->database();
        $this->load->model('user_model');
        $this->load->model('systemdata');

        $this->data['css'] = $this->systemdata->get_css_filespec();
        $this->data['scripts'] = $this->systemdata->get_scripts_filespec();
        $this->data['base_url'] = $this->systemdata->get_base_url();

但是css文件没有加载。它显示了一些错误,例如

A PHP Error was encountered

Severity: Notice

Message: Undefined variable: base_url

A PHP Error was encountered

Severity: Notice

Message: Undefined variable: css

我做错了什么?我使用了自动加载 url 助手。但结果还是一样。

4

2 回答 2

2

您的变量没有定义,因为您实际上并没有将它们传递给您的视图。$data$this->data不是一回事。

在这里,您正确地将$data数组传递给您的视图:

$data['title']= 'Registration';
$this->load->view("viewregistration.php", $data);

但是请注意这里你是如何将你的变量分配给 的$this->data,它永远不会被传递给视图:

$this->data['css'] = $this->systemdata->get_css_filespec();
$this->data['scripts'] = $this->systemdata->get_scripts_filespec();
$this->data['base_url'] = $this->systemdata->get_base_url();

您需要将变量分配给$data或传递$this->data给您的视图。

于 2012-04-17T20:59:56.163 回答
1

我不认为这条线是必要的。

$this->data['base_url'] = $this->systemdata->get_base_url();

你能做的,就是这个。

<link rel="stylesheet" type="text/css" href="<?php echo base_url($css.'reg_style.css'); ?>" />

base_url() 是一个 CI 函数,它为您提供基本 url。

资料来源:http ://codeigniter.com/user_guide/helpers/url_helper.html

于 2012-04-20T23:12:40.247 回答