報錯如下:
hello A PHP Error was encountered Severity: Notice Message: Undefined property: Test::$load Filename: controllers/test.php Line Number: 9 Fatal error: Call to a member function view() on a non-object in D:\xampp\htdocs\citest\application\controllers\test.php on line 9
代碼如下:
<?php if(!defined('BASEPATH')) exit('No direct script access allowed'); class Test extends CI_Controller{ public function test() {
//此處是引發錯誤的根源 echo 'hello'; } public function index() { $this->load->view('test/index'); } public function about() { $this->load->view('test/about'); } protected function test1() { echo 'test protected function'; } private function hello() { echo 'hello,ci'; } public function test2() { $this->test1(); echo '<br/>'; $this->hello(); } }
看到哪裡錯了嗎?因為我重寫了test控制器的構造函數,這和類名一樣的public方法和__construct方法是一樣的功能的,重寫了之後CI_Controller父類裡的實例化什麼的都沒了,必須自己實例化了。
除了把和類同名的方法移除外,還有中方法如下:
public function test() { echo 'hello'; parent::__construct(); } public function index() { $this->load->view('test/index'); }
這樣就沒問題了。
時隔三年,重新使用codeigniter,忘卻了許多事情。。。
MSSQLSERVER服務不能啟動故障一例
故障現象
使用SQL Server Service Manager啟動MSSQLServer沒有反應,啟動MSDTC沒有問題。使用控制面板中的<服務>啟動時出現提示“無法啟動MSSQLServer服務。錯誤2140:發生Windows NT 內部錯誤。”
原因
經過詢問操作人員得知,其在Enterprise Manager中,在SERVER的屬性中有一個startup parameters中的parameter被刪除掉,導致SQL SERVER 不能啟動
解決辦法
在ms-dos中,進入c:\mssql7\binn,執行
sqlservr -d c:\mssql7\data\master.mdf -e c:\mssql7\log\errorlog -l c:\mssql7\data\mastlog.ldf
大約一分鐘後,當提示信息出現Using ’xpstar.dll‘ version ‘1998.11.13’ to execute extended stored procedure ’sp_MSgetversion‘.時,即表示已經正常啟動,這時不能關掉該ms-dos窗口,打開Enterprise Manager,打開SERVER屬性窗口中的Startup parameters,在Startup Parameters窗口中添加參數:
-dc:\mssql7\data\master.mdf
-ec:\mssql7\log\errorlog
-lc:\mssql7\data\mastlog.ldf
然後關掉MS-DOS窗口,再用SQL Server Service Manager啟動服務就行了。
以上是在SQL7上進行修復,對於SQL2000,故障現象和操作方法基本上是一樣的,差別就是在MS-DOS方式中的提示信息不太一樣,還有就是文件的路徑改為c:\program files\microsoft sql server\mssql,其余的就都一樣了。
呵呵 你的跳轉是在 類裡面執行的,外面調用方法會在內部跳轉。你如果想 自定義的話就改變 類裡面的方法 就是 下面這個位置
/**************只能在這裡面跳轉***************************/
header("Location:../View/admin_home.php"); 這個位置 不用 改為 return true
header("Location:../View/user_login.php?loginProving=passWordError");這個位置 不用 改為 return false;
上面提交的地方 這裡
/*************想在這裡處理跳轉***************************/
$LoginProving -> userNameProving($userName,$passWord); 改為 $result= $LoginProving -> userNameProving($userName,$passWord);
這樣就可以判斷是否 登錄成功 了 if( $result){成功跳轉鏈接 }else{ 錯誤跳轉鏈接}