ホームページ > バックエンド開発 > PHPチュートリアル > ログイン前後のナビゲーション バーの処理 2015-12-12

ログイン前後のナビゲーション バーの処理 2015-12-12

WBOY
リリース: 2016-06-13 12:27:54
オリジナル
946 人が閲覧しました

ログイン前後のナビゲーション バーの処理 2015-12-12

注: ajax 値の転送と js 判定に関する灰色の背景を追加

1 ログイン後のコントローラーの処理:ログインしてユーザー情報を渡すかどうかを決定

<span style="color: #0000ff;">class</span> IndexController <span style="color: #0000ff;">extends</span><span style="color: #000000;"> HomeBaseController {    </span><span style="color: #008000;">//</span><span style="color: #008000;">登录</span>    <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">function</span><span style="color: #000000;"> index() {        </span><span style="color: #800080;">$id</span>=I("get.id"<span style="color: #000000;">);              </span><span style="color: #800080;">$users_model</span>=M("Users"<span style="color: #000000;">);                </span><span style="color: #800080;">$user</span>=<span style="color: #800080;">$users_model</span>->where(<span style="color: #0000ff;">array</span>("id"=><span style="color: #800080;">$id</span>))-><span style="color: #000000;">find();              </span><span style="color: #0000ff;">if</span>(<span style="color: #0000ff;">empty</span>(<span style="color: #800080;">$user</span><span style="color: #000000;">)){            </span><span style="color: #800080;">$this</span>->error("查无此人!"<span style="color: #000000;">);        }        </span><span style="color: #800080;">$this</span>->assign(<span style="color: #800080;">$user</span><span style="color: #000000;">);        </span><span style="color: #800080;">$this</span>->display(":index"<span style="color: #000000;">);    }    </span><span style="color: #0000ff;">function</span><span style="color: #000000;"> is_login(){        </span><span style="color: #0000ff;">if</span><span style="color: #000000;">(sp_is_user_login()){            </span><span style="background-color: #c0c0c0;"><span style="color: #800080;">$this</span>->ajaxReturn(<span style="color: #0000ff;">array</span>("status"=>1,"user"=></span><span style="color: #000000;"><span style="background-color: #c0c0c0;">sp_get_current_user()));</span>        }</span><span style="color: #0000ff;">else</span><span style="color: #000000;">{            </span><span style="color: #800080;">$this</span>->ajaxReturn(<span style="color: #0000ff;">array</span>("status"=>0,"info"=>"此用户未登录!"<span style="color: #000000;">));        }    }<br>。。。。。。</span>
ログイン後にコピー

2 ログイン前後のホームページナビゲーションバーのログイン/非ログイン表示

<span style="color: #0000ff;"><</span><span style="color: #800000;">div </span><span style="color: #ff0000;">id</span><span style="color: #0000ff;">="main-menu-user"</span><span style="color: #0000ff;">></span>      <span style="color: #008000;"><!--</span><span style="color: #008000;">还未登陆</span><span style="color: #008000;">--></span>            <span style="color: #0000ff;"><</span><span style="color: #800000;">div  </span><span style="color: #ff0000;">class</span><span style="color: #0000ff;">='userout </span><span style="color: #ff0000;">user' </span><span style="color: #0000ff;">></span>                <span style="color: #0000ff;"><</span><span style="color: #800000;">ul </span><span style="color: #ff0000;">class</span><span style="color: #0000ff;">="nav navbar-nav  navbar-right"</span><span style="color: #0000ff;">></span>                    <span style="color: #0000ff;"><</span><span style="color: #800000;">li</span><span style="color: #0000ff;">></span>                        <span style="color: #0000ff;"><</span><span style="color: #800000;">a </span><span style="color: #ff0000;">href</span><span style="color: #0000ff;">="{:u('user/register/index')}"</span><span style="color: #ff0000;"> data-toggle</span><span style="color: #0000ff;">="dropdown"</span><span style="color: #0000ff;">></span>注册<span style="color: #0000ff;"></</span><span style="color: #800000;">a</span><span style="color: #0000ff;">></span>                    <span style="color: #0000ff;"></</span><span style="color: #800000;">li</span><span style="color: #0000ff;">></span>                <span style="color: #0000ff;"></</span><span style="color: #800000;">ul</span><span style="color: #0000ff;">></span>                <span style="color: #0000ff;"><</span><span style="color: #800000;">ul </span><span style="color: #ff0000;">class</span><span style="color: #0000ff;">="nav navbar-nav  navbar-right"</span><span style="color: #0000ff;">></span>                    <span style="color: #0000ff;"><</span><span style="color: #800000;">li</span><span style="color: #0000ff;">></span>                        <span style="color: #0000ff;"><</span><span style="color: #800000;">a </span><span style="color: #ff0000;">href</span><span style="color: #0000ff;">="{:u('user/login/index')}"</span><span style="color: #ff0000;">  data-toggle</span><span style="color: #0000ff;">="dropdown"</span><span style="color: #0000ff;">></span>登陆<span style="color: #0000ff;"></</span><span style="color: #800000;">a</span><span style="color: #0000ff;">></span>                    <span style="color: #0000ff;"></</span><span style="color: #800000;">li</span><span style="color: #0000ff;">></span>                <span style="color: #0000ff;"></</span><span style="color: #800000;">ul</span><span style="color: #0000ff;">></span>                <span style="color: #0000ff;"><</span><span style="color: #800000;">ul </span><span style="color: #ff0000;">class</span><span style="color: #0000ff;">="nav navbar-nav  navbar-right"</span><span style="color: #ff0000;"> style</span><span style="color: #0000ff;">="margin-top:10px"</span><span style="color: #0000ff;">></span>                    <span style="color: #0000ff;"><</span><span style="color: #800000;">li </span><span style="color: #0000ff;">></span>                        <span style="color: #0000ff;"><</span><span style="color: #800000;">img </span><span style="color: #ff0000;">src</span><span style="color: #0000ff;">="__TMPL__/Public/img/headicon.png"</span><span style="color: #ff0000;"> class</span><span style="color: #0000ff;">="headicon"</span><span style="color: #0000ff;">/></span>                    <span style="color: #0000ff;"></</span><span style="color: #800000;">li</span><span style="color: #0000ff;">></span>                <span style="color: #0000ff;"></</span><span style="color: #800000;">ul</span><span style="color: #0000ff;">></span>            <span style="color: #0000ff;"></</span><span style="color: #800000;">div</span><span style="color: #0000ff;">></span>    <span style="color: #008000;"><!--</span><span style="color: #008000;">已经登陆</span><span style="color: #008000;">--></span>            <span style="color: #0000ff;"><</span><span style="color: #800000;">div </span><span style="color: #ff0000;">class</span><span style="color: #0000ff;">="userlogin user"</span> <span style="color: #0000ff;">></span>                <span style="color: #0000ff;"><</span><span style="color: #800000;">ul </span><span style="color: #ff0000;">class</span><span style="color: #0000ff;">="nav navbar-nav  navbar-right"</span><span style="color: #0000ff;">></span>                    <span style="color: #0000ff;"><</span><span style="color: #800000;">li</span><span style="color: #0000ff;">></span>                        <span style="color: #0000ff;"><</span><span style="color: #800000;">a </span><span style="color: #ff0000;">href</span><span style="color: #0000ff;">="{:u('user/index/logout')}"</span><span style="color: #ff0000;"> data-toggle</span><span style="color: #0000ff;">="dropdown"</span><span style="color: #0000ff;">></span>退出<span style="color: #0000ff;"></</span><span style="color: #800000;">a</span><span style="color: #0000ff;">></span>                    <span style="color: #0000ff;"></</span><span style="color: #800000;">li</span><span style="color: #0000ff;">></span>                <span style="color: #0000ff;"></</span><span style="color: #800000;">ul</span><span style="color: #0000ff;">></span>                <span style="color: #0000ff;"><</span><span style="color: #800000;">ul </span><span style="color: #ff0000;">class</span><span style="color: #0000ff;">="nav navbar-nav  navbar-right"</span><span style="color: #0000ff;">></span>                    <span style="color: #0000ff;"><</span><span style="color: #800000;">li</span><span style="color: #0000ff;">></span>                 <span style="color: #0000ff;"><</span><span style="color: #800000;">a </span><span style="color: #ff0000;">href</span><span style="color: #0000ff;">="{:u('user/center/index')}"</span><span style="color: #ff0000;">  data-toggle</span><span style="color: #0000ff;">="dropdown"</span><span style="color: #ff0000;"> class</span><span style="color: #0000ff;">="user-nicename"</span><span style="color: #0000ff;">></</span><span style="color: #800000;">a</span><span style="color: #0000ff;">></span>                    <span style="color: #0000ff;"></</span><span style="color: #800000;">li</span><span style="color: #0000ff;">></span>                <span style="color: #0000ff;"></</span><span style="color: #800000;">ul</span><span style="color: #0000ff;">></span>                <span style="color: #0000ff;"><</span><span style="color: #800000;">ul </span><span style="color: #ff0000;">class</span><span style="color: #0000ff;">="nav navbar-nav  navbar-right"</span><span style="color: #ff0000;"> style</span><span style="color: #0000ff;">="margin-top:10px"</span><span style="color: #0000ff;">></span>                    <span style="color: #0000ff;"><</span><span style="color: #800000;">li </span><span style="color: #0000ff;">></span>                        <span style="color: #0000ff;"><</span><span style="color: #800000;">img </span><span style="color: #ff0000;">src</span><span style="color: #0000ff;">=""</span><span style="color: #ff0000;"> class</span><span style="color: #0000ff;">="headicon"</span><span style="color: #0000ff;">/></span>                    <span style="color: #0000ff;"></</span><span style="color: #800000;">li</span><span style="color: #0000ff;">></span>                <span style="color: #0000ff;"></</span><span style="color: #800000;">ul</span><span style="color: #0000ff;">></span>            <span style="color: #0000ff;"></</span><span style="color: #800000;">div</span><span style="color: #0000ff;">></span><span style="color: #0000ff;"></</span><span style="color: #800000;">div</span><span style="color: #0000ff;">></span>
ログイン後にコピー

3 ログイン後、ボックスに対する js 操作

<script><br><span style="color: #000000;"> $(</span><span style="color: #0000ff;">function</span><span style="color: #000000;"> () {</span><span style="color: #008000;">/*</span><span style="color: #008000;">控制导航栏显示登陆还是个人中心</span><span style="color: #008000;">*/</span><span style="color: #000000;">  $.post(</span>"{:U('user/index/is_login')}",{},<span style="color: #0000ff;">function</span><span style="color: #000000;">(data){      </span><span style="color: #0000ff;">if</span>(data.status==1<span style="color: #000000;">){          </span><span style="color: #0000ff;">if</span><span style="color: #000000;">(data.user.avatar){<span style="background-color: #c0c0c0;">              $(</span></span><span style="background-color: #c0c0c0;">"#main-menu-user ul li .headicong").attr("src",data.user.avatar.indexOf("http")==0?data.user.avatar:"__UPLOAD__avatar/"+<span style="color: #000000;">data.user.avatar);            }      $(</span>"#main-menu-user ul li .user-nicename").text(data.user.user_nicename!=""?</span><span style="color: #000000;"><span style="background-color: #c0c0c0;">data.user.user_nicename:data.user.user_login);</span>      $(</span>"#main-menu-user .userlogin"<span style="color: #000000;">).show();      $(</span>"#main-menu-user .userout"<span style="color: #000000;">).hide();                     }      </span><span style="color: #0000ff;">if</span>(data.status==0<span style="color: #000000;">){         $(</span>"#main-menu-user .userout"<span style="color: #000000;">).show();         $(</span>"#main-menu-user .userlogin"<span style="color: #000000;">).hide();      }});  });</span></script>
ログイン後にコピー
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート