我在文件settings.php
中有以下文字:
etc... //USTAWIENIA PODSTAWOWE
define("P2_PAGE_CLOSED", "true"); // przerwa techniczna - prawidłowe wartości = true lub false
define("P2_PAGE_CLSTXT", "Przepraszamy za utrudnienia - strona tymczasowo nieczynna"); //opis wyświetlany w przypadku przerwy technicznej
define("P2_PAGE_BGCOLOR", ""); //inny niż biały kolor tła - należy zapisać w postaci heksadecymalnej (musi zawierać # !)
define("P2_PAGE_TITLE", "Portal Uczniowski 2.0 - {title}"); // tytuł strony - {title} = nazwa aktualnie przeglądanej strony
define("P2_PAGE_INDEX", "true"); // czy strona ma być indeksowna przez wyszukiwarki internetowe - prawidłowe wartości = true lub false
define("P2_PAGE_KEYWORDS","portal uczniowski 2.0"); // słowa kluczowe dla wyszukiwarki - może pozostać puste w przypadku gdy wartość pola P2_PAGE_INDEX jest równa false
define("P2_PAGE_DESC","Portal Uczniowski"); // opis strony w wyszukiwarce - - może pozostać puste w przypadku gdy wartość pola P2_PAGE_INDEX jest równa false
define("P2_PAGE_ONLYREG", "true"); //tylko zarejstrowani użytkownicy mogą odwiedzić stronę - prawidłowe wartości = true lub false
// etc...
我有一个函数(在文件core.inc
中),它验证了settings.php
的正确性:
function core_validateSettings()
{
include_once("settings.php");
if(P2_PAGE_CLOSED != "false" && P2_PAGE_CLOSED != "true") { echo "Błąd w stałej ustawień P2_PAGE_CLOSED"; return false;}
if(P2_PAGE_INDEX != "false" && P2_PAGE_INDEX != "true") { echo "Błąd w stałej ustawień P2_PAGE_INDEX"; return false;}
if(P2_PAGE_ONLYREG != "false" && P2_PAGE_ONLYREG != "true") { echo "Błąd w stałej ustawień P2_PAGE_ONLYREG"; return false;}
if(P2_SEC_HOTLINK != "false" && P2_SEC_HOTLINK != "true") { echo "Błąd w stałej ustawień P2_SEC_HOTLINK"; return false;}
if(P2_SEC_REQMAIL != "false" && P2_SEC_REQMAIL != "true") { echo "Błąd w stałej ustawień P2_SEC_REQMAIL"; return false;}
if(P2_SEC_RECPASS != "false" && P2_SEC_RECPASS != "true") { echo "Błąd w stałej ustawień P2_SEC_RECPASS"; return false;}
if(!is_int(P2_SEC_MINPASS)) { echo "Błąd w stałej ustawień P2_SEC_MINPASS"; return false;}
if(!is_int(P2_SEC_MAXPASS)) { echo "Błąd w stałej ustawień P2_SEC_MAXPASS"; return false;}
if(!is_int(P2_SEC_FLOGIN)) { echo "Błąd w stałej ustawień P2_SEC_FLOGIN"; return false;}
return true;
}
我不知道为什么,但是我的程序的结果(在index.php
中我只实现了该功能)是
“BłądwstałejustawieńP2_PAGE_CLOSED”
条件语句中是否有错误?它应该什么都不显示!我分析了那段代码三次,但我没有看到任何东西。
答案 0 :(得分:1)
我假设你不希望你的条件是互斥的。如果是这样,你需要删除它们的返回值,因为它们会跳出整个函数,从而跳过后续的条件。
答案 1 :(得分:1)
因为第一个条件是评估true
,我们可以逻辑地假设P2_PAGE_CLOSED != "true"
正在评估为true,这意味着include_once
方法必定存在问题define
调用未执行(假设if
语句没有问题)。
此外,打开PHP的more verbose error handling。
可能会有所帮助