【问题标题】:Click counter in PHP (without form)PHP中的点击计数器(无表单)
【发布时间】:2015-12-23 21:38:27
【问题描述】:

我曾经根据表格进行过反击。一切都很好,直到我不得不在网站上进行更改。

旧代码:

<?php
if( isset($_POST['b1']) ) {
    $count += 1;
    $_SESSION['count'] = $count;
}

(...)

?>

<form action="start.php" method="post">
    <button id="b1" class="btn" name="b1"> B1 </button>
    <button id="b2" class="btn" name="b2"> B2 </button>
</form>

表格有问题,所以我正在寻找另一种解决方案。有人告诉我我尝试了 Ajax ,但它只适用于我 $_GET (我需要发布)

我做错了什么?

<script>
  $(document).ready(function(){
    $("#b1").click(function(){
      $.post("start.php", { name: "b1" });
      location.reload();
    });
  });
</script>

【问题讨论】:

  • 检查错误和开发者的控制台。
  • 更改{ name: "b1" } -> { b1: 1 }

标签: php jquery ajax counter


【解决方案1】:

你检查的是 b1 但实际上你通过 name 与 b1 作为值

那么你需要把你的php代码改成这个

<?php
if( isset($_POST['name']) && $_POST['name'] == 'b1' ) {
    $count += 1;
    $_SESSION['count'] = $count;
}

(...)

?>

更新

if( isset($_POST['name']) && $_POST['name'] == 'b1' ) {
    $_SESSION['count'] += 1;
}

【讨论】:

  • 谢谢。我已经按照你的方式做了,但计数器一直显示 1。问题可能出在哪里?
  • @PjRain 我认为问题在 $count 中没有声明,因此将其视为 0,所以只需查看我的答案的 更新
  • 对我来说是半夜,没想到...当然有帮助,谢谢:)
猜你喜欢
  • 1970-01-01
  • 2011-11-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-30
相关资源
最近更新 更多