大佬教程收集整理的这篇文章主要介绍了通过在页面上包含此PHP文件,是我正在其中运行所有功能,还是仅允许它们被访问?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有这个功能文件.通过执行…<?PHP include('functions.PHP'); ?> …是我在其中运行所有功能,还是只是简单地允许它们被调用(使它们存在于当前作用域中).
<?PHP
/*
* -------------------------------------------------------------------------------------
* ---------------------------- GLOBALLY AVAILABLE FUNCTIONS ---------------------------
* -------------------------------------------------------------------------------------
*/
function user_loggedin_check() {
if(isset($_COOKIE['logged_in']) && ($_COOKIE['logged_in'] == truE)){
$logged_in = true;
setcookie("logged_in", $logged_in, time()+14400);
return true;
} else {
header('LOCATIOn: index.PHP?loginerr=6');
exit();
}
}
function permission_level_2_check() {
if(isset($_COOKIE['permission_level']) && ($_COOKIE['permission_level'] == 2)){
$logged_in = true;
setcookie("logged_in", $logged_in, time()+14400);
return true;
} else {
setcookie("logged_in", false, time()-1);
setcookie("permission_level", 1, time()-1);
session_unset();
session_destroy();
header('LOCATIOn: index.PHP?loginerr=7');
exit();
}
}
function permission_level_3_check() {
if(isset($_COOKIE['permission_level']) && ($_COOKIE['permission_level'] == 3)){
$logged_in = true;
setcookie("logged_in", $logged_in, time()+14400);
return true;
} else {
setcookie("logged_in", false, time()-1);
setcookie("permission_level", 1, time()-1);
session_unset();
session_destroy();
header('LOCATIOn: index.PHP?loginerr=7');
exit();
}
}
function display_login_errors() {
/*
* -------------------------------------------------------------------------------------
* ---------------------------------- ERROR LIST ---------------------------------------
* -------------------------------------------------------------------------------------
*/
/*
* loginerr=0 -> passwords don't match
* loginerr=1 -> username already exists in DB
* loginerr=2 -> registration is currently disabled
* loginerr=3 -> password is too long and/or too short
* loginerr=4 -> email isn't in proper format
* loginerr=5 -> email is too long and/or too short
* loginerr=6 -> user isn't logged in, generic redirect to login page error
* loginerr=7 -> user doesn't have the required access to view that page
*/
if(isset($_GET["loginerr"])){
$loginerr = $_GET["loginerr"];
switch ($loginerr) {
case 0:
echo "<div class='alert alert-error pagination-centered frontpage-alert'>";
echo "<strong>Your passwords didn't match. Try again.</strong>";
echo "</div>";
break;
case 1:
echo "<div class='alert alert-error pagination-centered frontpage-alert'>";
echo "<strong>That email address is already registered.</strong>";
echo "</div>";
break;
case 2:
echo "<div class='alert alert-error pagination-centered frontpage-alert'>";
echo "<strong>Registration is currently disabled. Try again later.</strong>";
echo "</div>";
break;
case 3:
echo "<div class='alert alert-error pagination-centered frontpage-alert'>";
echo "<strong>Your password must be between 4 and 32 characters in length.</strong>";
echo "</div>";
break;
case 4:
echo "<div class='alert alert-error pagination-centered frontpage-alert'>";
echo "<strong>Your email address didn't match proper formatTing (email@domain.com).</strong>";
echo "</div>";
break;
case 5:
echo "<div class='alert alert-error pagination-centered frontpage-alert'>";
echo "<strong>Your email address must be between 6 and 32 characters in length.</strong>";
echo "</div>";
break;
case 6:
echo "<div class='alert alert-error pagination-centered'>";
echo "<strong>You need to be logged in to access that page. Please log in.</strong>";
echo "</div>";
break;
case 7:
echo "<div class='alert alert-error pagination-centered'>";
echo "<strong>You don't have access to view that page. You have been logged out due to suspicIoUs activity.</strong>";
echo "</div>";
break;
}
}
}
?>
解决方法:
您只是在定义函数,而不是调用它们.如果该文件中有函数调用,它将执行.通常,您想要分离执行代码和函数/类定义.
如果您的文件仅包含函数或类定义,则最好使用include_once(或require_oncE).因为如果两次包含该文件,将得到一个函数已经存在错误.使用include_once可以避免这种情况.
处理依赖关系的一种更高级的方法是使用spl_autoload_register
自动加载.Symfony2等流行的框架具有独特的命名方案,可让您将类名映射到文件名,以便可以即时自动加载任何类.
以上是大佬教程为你收集整理的通过在页面上包含此PHP文件,是我正在其中运行所有功能,还是仅允许它们被访问?全部内容,希望文章能够帮你解决通过在页面上包含此PHP文件,是我正在其中运行所有功能,还是仅允许它们被访问?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。