【问题标题】:Disable back button after logout?注销后禁用返回按钮?
【发布时间】:2020-06-04 09:02:20
【问题描述】:

我正在使用 php。我希望在用户登录后单击后退按钮时将用户重定向到注销页面。如何做到这一点?代码在哪里写?

我登录到站点管理员..注销然后点击返回按钮,我可以看到上一页。为什么网站管理员不处理这个。

这是站点管理中的注销代码:

if( !function_exists( 'adifier_logout_inactive' ) ){
function adifier_logout_inactive( $username, $user ){
    if( !is_wp_error( $user ) ){
        $logout = true;
        if( !empty( $user->allcaps['edit_posts'] ) && $user->allcaps['edit_posts'] === true ){
            $logout = false;
        }
        else if( get_user_meta( $user->ID, 'user_active_status', true ) == 'active' ){
            $logout = false;
        }
        if( $logout === true  ){
            wp_logout();
        }
    }
}
add_filter( 'wp_login', 'adifier_logout_inactive', 10, 2 );
}

【问题讨论】:

    标签: php logout


    【解决方案1】:

    第一个问题:back button 是什么?

    Answer: 它是一个不受 Web 服务器控制的按钮。如果按下,浏览器将再次加载具有先前使用的 URL 的页面。一些浏览器(或全部?)支持back N steps button

    网络服务器看到了什么?

    网络服务器只能看到 URL。他不知道是否再次加载了 URL,或者用户是否使用了后退按钮之一。所以(新的)URL 是决定的唯一数据。识别back button 用法的唯一机会是也使用会话数据。

    陷阱:用户可以打开多个窗口。他可以按下重新加载按钮。他可以设置和使用书签。

    有了这些知识,您应该重新考虑如何检测back button 以及您是否真的想要管理(某些方面)它。或者换句话说:禁止再次加载以前的 URL 是否值得。

    解决方案可能是:如果用户进入登录页面并且已经登录,则将他重定向到另一个页面(欢迎、状态、概述)。我在我的网站上这样做。

    【讨论】:

      猜你喜欢
      • 2011-10-18
      • 2012-05-17
      • 2014-10-22
      • 2013-07-20
      • 1970-01-01
      • 2018-06-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多