用session(show)显示/隐藏div

时间:2015-09-22 07:56:54

标签: php jquery html css session

我想在会话中隐藏div /按钮。喜欢,如果会话用户是" abc"然后不想显示div /按钮。如果会话用户是" xyz"然后应该显示div /按钮。

我试过这个:

<?php if($_SESSION['usr'] == 'guest'){ ?>
        <input id="estimate" class="btn btn-sm btn-success " type="button" value="Get Estimation" />
<?php } ?>

我在该标签上有一些onclick代码。

所以,它给了我这些错误:

无法设置属性&#39; onclick&#39;为null

Onclick事件我写ajax事件:

$.ajax({
        type: "POST",
        url: "getsavedatalist.php",
        data: { uid: usrid },
        dataType: "html"
    })
    .done(function( msg ) {
        msg;
        document.getElementById('listCon').innerHTML = msg ;
    })
    .fail(function() {
        //alert( " error  in json request failed  " );
        alert( alt_getlist_arr );
    })
    .always(function() {

        console.log( "url :  " +  this.url );
    });

我有3个按钮。当会话用户是&#34; abc&#34;我想隐藏3个按钮的1个按钮形式。当会话用户是&#34; xyz&#34;想要显示那个按钮。!

3 个答案:

答案 0 :(得分:2)

首先检查您的文件的第一行是否添加了session_start();。然后把下面的代码。

<?php if($_SESSION['usr'] == 'xyz'){
    //Put the buttons which you want to display on when the use is XYZ.
} else {
    //Put the buttons which you want to display on when the use is ABC.
} ?>

答案 1 :(得分:1)

绑定onclick侦听器时,需要检查该元素是否存在。你可以这样做:

if ( $( "#estimate" ).length ) {
    //Add your onclick here
}

查询的length属性给出了查询返回的元素数量,如果为0(因此没有id为estimate的元素),它将跳过if。

答案 2 :(得分:1)

HTML代码:

<div class="form" id="xyz" style="display: none;">
<div class="form" id="abc" style="display: none;">  

PHP代码:

<?php 
    if ($_SESSION['usr'] == 'xyz') {
       $showdiv = 'xyz';
    }
    else if ($_SESSION['usr'] == 'abc') {
       $showdiv = 'abc';
    }

    echo "<script type=\"text/javascript\">document.getElementById('".$showdiv."').style.display = 'block';</script>";
?>