php - 显示登录 JS 弹出窗口以进行身份​​验证所需的操作

标签 php javascript html ajax kohana

我想显示一个登录弹出窗口,当用户单击任何需要用户登录的按钮/链接时,由 JS 处理的覆盖层。 例如:如果用户尝试在未登录的情况下发表评论,则单击帖子时我必须显示此弹出窗口。

这不是 ajax 调用,我可以根据服务器响应显示弹出窗口。

有办法做到这一点吗?也许通过检查状态代码或类似的东西?

挑战是,当用户登录时,特定操作会将用户带到另一个页面,但是当用户未登录时,我想抑制此操作,而是在同一页面中显示登录弹出窗口。

最佳答案

小心,即使在 Chrome 中,您也可以直接编辑 javascript,只需右键单击页面 > 检查元素 > 资源 > javascript,然后输入您的更改,绕过您的检查。请记住,您使用它只是为了增加用户体验,但请确保您的 php 或任何服务器端脚本检查有效 session 。

因此,假设您正在处理这一问题,如果您向按钮/链接添加一个类,如下所示:

<a href="go_to_post.php" class="requires_login">Post Comment</a>
<form><input type="submit" class="requires_login" value="Post Comment" /></form>

例如,您可以使用 javascript 或 jquery:

$(document).ready(function(){
  var valid_session='<?php echo (isset($_SESSION['id']) ? 'true':'false'); ?>';
  $('.requires_login').on('click',function(event){
    if (valid_session=='false'){
      event.preventDefault();
      alert('open popup instead');
      //for instancce, $('#my_popup').show(); if you have:
      //<div id="my_popup">You must be logged in first!</div>
    }
  });
});

希望有帮助!

关于php - 显示登录 JS 弹出窗口以进行身份​​验证所需的操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13029426/

相关文章:

php - 将 Canvas 图像保存到服务器

javascript - 使用 Sammy.js 时如何移动到页面上的 anchor ?

javascript - 在 Javascript 中使用带引号的字符串内的变量?

html - 有多个带有名称的 HTTP GET 参数是否合法?

PHP错误的时区邮件

php - 如何将数据从 Javascript 传递到 PHP,反之亦然?

java - 如何以及在何处将上传的图像放置在 glassfish 4 上

html - 使用第 n 个子元素在 css 中选择元素

php - Swift - JSON 响应以\u201c 开头并以\u201d 结尾

javascript - WordPress 中的 Qtip2/同位素冲突 : "Uncaught TypeError: Cannot call method ' call' of undefined"