2013-10-19 92 views
0

我是新的codeigniter开发人员。 我试图发送控制器之间的意见,但只有索引函数发送。 当我尝试不同的功能,我得到这个错误。如何codeigniter控制器之间发送参数和查看不同的功能

A PHP Error was encountered 

Severity: Notice 

Message: Undefined variable: sample 

Filename: views/merhaba_sayfasi.php 

Line Number: 8 

我的控制器文件= merhaba.php

<?php if (! defined('BASEPATH')) exit('No direct script access allowed'); 
    class Merhaba extends CI_Controller { 

     public function index() 
     { 
      $data["title"]="İlk codeigniter sayfam"; 
      $data["giris_baslik"] = "Merhaba Dünya"; 
      $this->load->view('merhaba_sayfasi',$data); 
     } 

     public function example(){ 
      $data["sample"] = "Sample php"; 
      $this->load->view("merhaba_sayfasi",$data); 
     } 
    } 
?> 

我的视图文件= merhaba_sayfasi.php

<html> 
<head> 
    <meta charset="utf-8"> 
    <title><?php echo $title; ?></title> 
</head> 
<body> 
<h3><?php echo $giris_baslik; ?></h3> 
<?php echo $sample; ?> 
</body> 
</html> 

我的浏览器图像

http://www.medyasef.com/questions/codeigniter_function_error.png

回答

0

这取决于你打电话的URL是什么?

如果你所说的“/应用程序/ Merhaba”或“/应用程序/ Merhaba /索引”你不会看到采样变量。

如果你所说的“/应用程序/ Merhaba /例子”,那么你应该看到它。这一切都取决于您所呼叫控制器的什么功能 - 在默认情况下它只有索引功能

+0

首先感谢名单你的答案之前。你的回答是真实的,但有一个问题。当我调用本地主机:8888/CI/index.php文件/ merhaba /我不看样可变的,但如果我说本地主机:8888/CI/index.php文件/ merhaba /例子中,我看不到$ giris_baslik变量,我得到的错误。 http://www.medyasef.com/questions/ci_sample_error.png –

0

你想显示的是一个变量,其价值尚未确定,这就是为什么被抛出的错误。

您可以在您的视图进行检查以确保一个变量试图呼应之前的值。

因此,而不是:

<?php echo $sample; ?> 

你可以使用:

<?php if(isset($sample)) {echo $sample;} ?> 

虽然,我会建议保持逻辑控制器和设置的所有值在控制器加载视图

+0

感谢您的回答。但我想看到所有的PHP变量。 –

+0

然后,您必须将所有变量传递给相同函数中的视图。 – jleft

相关问题