我是php小學。
我正在做一個PHP系統的版本從很舊的版本到5.6。 此外,不幸的是任何文件都不是關於舊系統...
我有一個問題無法理解。
Controller.php這樣
<?php
require_once("./commonLogUtils.php");
require_once("./authModel.php");
require_once("./searchModel.php");
session_start();
if (strlen($_REQUEST['action']) <= 0)
{
$_REQUEST['display'] = "system";
include("./loginView.php");
return;
}
我覺得Controller.php這樣是啓動系統的頁面。
如果我嘗試用這個地址「http://localhost/cadsearch/controller.php」
它顯示通知,我說:「通知:未定義指數:行動」訪問該頁面在我的本地
釋放的舊系統不即使使用相同的來源也表示通知。
所以,我不能站在那個行動是從哪裏設置。
如果你知道這個,你能教我嗎?
謝謝。
請發送loginview.php文件too.maybe該文件存在問題 –
很可能,您的舊系統沒有啓用'error_reporting'和'display_errors'(應始終在開發和測試期間啓用,這樣的錯誤),但代碼會爲任何PHP版本生成通知。它正在檢查$ _REQUEST ['action']'中字符串的_length_是否爲零,這實際上意味着它未被設置,但如果以這種方式使用PHP,它將發出E_NOTICE。你可以使用'if(empty($ _ REQUEST ['action'])){...' –
Michael //而不是'strlen()',當我在這裏問的時候,我只檢查了error_reporting。這與服務器和我的開發環境一樣。但我發現服務器的display_errors是「開」,而我的開發環境是「關」,我試圖改變我的php.ini display_errors從開到關。結果通知已經消失。謝謝。 – user5949771