javascript - 单击按钮时,检查用户是否登录

标签 javascript php jquery ajax

我有一个按钮负责执行多个任务,并且有很多脚本。当这个按钮

<button type="submit" value="submit" name="submit" class="second_button">Negotiate</button>

应用于此按钮的脚本是

<script>

var startClock;
var submitamt;
var walkaway;
var digits;

$(function() {
  startClock = $('#startClock').on('click', onStart);
  submitamt = $('#submitamt').on('click', onSubmit);
  walkaway = $('#walkaway').on('click', onWalkAway);
  digits = $('#count span');
  beforeStart();
});

var onStart = function(e) {
  startClock.fadeOut(function() {
    startTimer();
    submitamt.fadeIn(function() {
      submitamt.trigger('click'); // fire click event on submit
    });
    walkaway.fadeIn();
  });
};

var onSubmit = function(e) {
  var txtbox = $('#txt').val();
  var hiddenTxt = $('#hidden').val();
  $.ajax({
    type: 'post',
    url: 'test2.php',
    dataType: 'json',
    data: {
      txt: txtbox,
      hidden: hiddenTxt
    },
    cache: false,
    success: function(returndata) {

         console.log(returndata[3]);
    // $('#proddisplay').html(returndata);
    },
    error: function() { 
      console.error('Failed to process ajax !');
    }
  });
};

var onWalkAway = function(e) {
  console.log('onWalkAway ...');
};

var counter;
var timer;
var startTimer = function() {
  counter = 120;
  timer = null;
  timer = setInterval(ticker, 1000);
};

var beforeStart = function() {
  digits.eq(0).text('2');
  digits.eq(2).text('0');
  digits.eq(3).text('0');
};

var ticker = function() {
  counter--;
  var t = (counter / 60) | 0; // it is round off
  digits.eq(0).text(t);
  t = ((counter % 60) / 10) | 0;
  digits.eq(2).text(t);
  t = (counter % 60) % 10;
  digits.eq(3).text(t);
  if (!counter) {
    clearInterval(timer);
    alert('Time out !');
    resetView();
  }
};

var resetView = function() {
  walkaway.fadeOut();
  submitamt.fadeOut(function() {
    beforeStart();
    startClock.fadeIn();
  });
};
</script>

在执行此脚本之前,我希望检查用户是否已登录,在正常的 php 中我使用此代码

<?
if (isset($_SESSION['loggedin']) && $_SESSION['loggedin'] == true || isset($_SESSION['fb_logged_in']) && $_SESSION['fb_logged_in'] == true )
    {?>
        <!--display message-->
    <?}?>   

但我无法理解如何将其嵌入到脚本中,我希望在用户未登录时显示弹出消息并要求用户先登录

最佳答案

不建议使用客户端脚本检查它。尝试使用隐藏变量..

<input type="hidden" name="userLog" id="userLog" value="<?=$_SESSION['fb_logged_in'];?>">

并在脚本中检查

if($('#userLog')!=''){  
  // do something..
}

关于javascript - 单击按钮时,检查用户是否登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30936890/

相关文章:

javascript - 计算jquery自动完成字段中多个选择的数量

javascript - 如何在js中读取表格中单击行的第一列?

php - 将永久链接更改为 'Postname' 导致找不到页面

javascript - 如何在着陆页图形上添加鼠标悬停图像

jquery - 如何隐藏图像损坏的图标而不隐藏所有样式?

jquery - 如何制作自定义滚动条 jQuery 插件

javascript - f() 和 (f()) 之间有什么区别?

javascript - 从 Laravel 5.1 中的 sessionStorage 获取值(value)

php - 在 Mysql 数据库中添加新记录时触发 ajax

php - IE 不显示所有图像