javascript - 好奇 : Disable jQuery and Javascript interactions unless user is logged in?

标签 javascript php jquery authentication

除非用户登录,否则是否可以禁用 jQuery 和 Javascript 交互?

起初我想把所有的交互放在一个单独的文件中,然后在用户登录时用 PHP 加载它,但是有没有不同的方法来做到这一点,或者你认为这样做更好以下:

在用户进入网站的主要部分之前创建一个登录屏幕。

最佳答案

我们现在有了 HTML5!只需创建一个 HTML session 或一个 php $COOKIE 并使用简单的 if 语句控制您的 javascript 函数。

网络存储

localStorage.setItem("is_logged_in", var);

if(is_logged_in){
    //all of your functions in here  
}

您可以在此处阅读更多信息 http://www.w3schools.com/html/html5_webstorage.asp

PHP

更简单的方法,我个人最喜欢使用 PHP。

$var = "is_logged_in";
setcookie($var , time() + (86400 * 30), "/")

然后检查:

<?php if(isset($_COOKIE[$var])) { ?>
    //all of your functions in here
<?php } ?>

您可以在此处阅读更多信息 http://www.w3schools.com/php/php_cookies.asp

编辑

当然,您始终可以在非常小的 if 中禁用所有控件,而不是使用庞大的 if 语句。

<?php if(isset($_COOKIE[$var])) { ?>
     $('button').attr('disabled', 'disabled');
<?php } ?>

关于javascript - 好奇 : Disable jQuery and Javascript interactions unless user is logged in?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27128343/

相关文章:

jquery - 使用 <object> 动画 SVG

javascript - Angular 7 - 生产模式 : I can't navigate through page using the tab key

javascript - Angular 构建找不到已安装的 Font-Awesome node_module

java - 使用JSP在服务器上上传多个文件

php - 在 hook_views_query_alter() 中添加 JOIN 语句

php - CSS 和 Javascript 汇总文件

php 在 Windows 7 上通过 nodejs 使用 lessc 编译 less 文件

javascript - Jquery 文件未在浏览器上加载

javascript - IE 无法在某些页面上加载 jQuery 扩展

javascript - 计算对象和所有子对象中的字符串总数