PHP增量整数onClick

gg0vcinb  于 2023-01-29  发布在  PHP
关注(0)|答案(5)|浏览(112)

我已经搜索了不同的方法来解决这个问题,但是没有成功。我的代码基本上是这样的:

<?php
   $attnum = 1;
?>

<button type="button" onClick="<?php $attnum++ ?>">+</button>
<h3><em>att<?php echo "$attnum" ?>: </em></h3>

当页面加载时,它已经在$attnum上加了1。我只想在按下按钮时在$attnum上加1。我做错了什么?
谢谢

yqhsw0fo

yqhsw0fo1#

如果您想在服务器端执行此操作,可以按如下方式执行:

<?php
   session_start();
   // Page was not reloaded via a button press
   if (!isset($_POST['add'])) {
       $_SESSION['attnum'] = 1; // Reset counter
   }
?>

<form method='post'>
<input name='add' type="submit" value='+'>
<h3><em>att<?php echo $_SESSION['attnum']++ ?>: </em></h3>
</form>

如果您想在客户端执行此操作,请按以下方式执行:

<button id='add' type="button">+</button>
<h3><em>att<span id='val'>1</span>: </em></h3>

<script>
document.addEventListener("DOMContentLoaded", function() {
    document.getElementById('add').addEventListener('click', function() {
        document.getElementById('val').innerHTML++;
    });
});
</script>
ibps3vxo

ibps3vxo2#

你混淆了HTML(客户端)和PHP(服务器端)。如果你想在用户点击按钮时增加PHP中的服务器变量,你必须通知服务器,例如使用 AJAX 调用。

cedebl8k

cedebl8k3#

我用Javascript实现了这个,检查这个小提琴:
超文本:

<button id="button" type="button">+</button>
<h3><em>att<span id="att">1</span>:</em></h3>

Javascript:

var button = document.getElementById('button');
var attnum = 1;
button.addEventListener('click', function(){
    document.getElementById('att').innerHTML = ++attnum;
});

https://jsfiddle.net/a79bb31b/9/

lb3vh1jj

lb3vh1jj4#

使用javascript创建一个函数,并在按钮的onClick属性中调用它。
超文本:

<button type="button" onClick='add()'>+</button>
<h3><em>att <span id='att-num'></span> : </em></h3>

在某处添加脚本标记(我通常将其放在底部):

<script>
  function add() {
    document.getElementById('att-num').innerHTML++;
  }

</script>
cigdeys3

cigdeys35#

像这样试试

<button type="button" onClick="funct('<?php $attnum++ ?>')">+</button>
<h3><em>att<?php echo "$attnum" ?>: </em></h3>

并创建一个新的javascript函数

相关问题