通过php会话用户名设置cookie

时间:2017-12-06 13:05:29

标签: javascript php jquery cookies

我设置了一个通用cookie,适用于一次运行情况。但是,我需要做的是按用户名设置cookie,这样每个用户只显示一次消息。我正在使用php为链接到mysql的用户名设置会话。

我已经发布了我用于常规Cookie的代码,并想知道是否可以将其修改为定位用户名而不是常规Cookie。

如果有人可以帮助我,我将不胜感激。感谢

<script>
$(document).ready(function() {
  if (document.cookie.indexOf("runOnce") < 0) {
    $("#message3").dialog({
      modal: true,

      buttons: {
        'Confirm': function() {
            document.cookie = 'runOnce = true; expires = Fri, 31 Dec 9999 23:59:59 GMT; path = /';
            $(this).dialog("close");
          }
          /* ,
          No: function () {
          $( this ).dialog( "close" ); 
          }*/

      }
    });

    // Hide the close button
    jQuery("a.ui-dialog-titlebar-close").hide();

    //Disable the confirm button on page load
    $(":button:contains('Confirm')").attr("disabled", true).addClass("ui-state-disabled");

    // Uncheck the 'agree' checkbox
    $(function() {
      $('#message3 input[type=checkbox]').attr('checked', false);
    });

    // Hide red message paragraph
    $('#agreemsg').hide();

    // Function to enable and disable confirm button based on checkbox click event
    $("#checkme").click(function() {

      var isChecked = $("#checkme").is(":checked");

      if (isChecked) {

        //alert("CheckBox checked.");
        $(":button:contains('Confirm')").removeAttr('disabled').removeClass('ui-state-disabled');
        $('#agreemsg').show();

      } else {
        //alert("CheckBox not checked.");
        $(":button:contains('Confirm')").prop("disabled", true).addClass("ui-state-disabled");
        $('#agreemsg').hide();
      }
    });
    //}
  };
});
</script>

1 个答案:

答案 0 :(得分:0)

Cookie不是实现此目的的正确位置。最好在与用户关联的数据库中添加其他属性,例如:

表:用户

列:

id
username
... other fields ...
is_first_login
  1. 如果is_first_login不正确,则显示您的消息
  2. 显示消息后,将数据库中的is_first_login标记为true