我有一个锚标签:
<a href="abc.php?a=1">Count Click</a>
我想数一下这个链接被点击的次数。
在abc.php中,我使用了以下代码,但它不起作用:
$b = $_GET['a'];
$b += 1;
echo "Number of Times Clicked=".$b;
编辑请改用POST;
$a = intval($_POST['a']);
session_start();
$b = intval($_SESSION['clickCount']);
$b += $a;
$_SESSION['clickCount'] = $b;
session_write_close();
您应该将这个变量的值存储在某个地方,因为当您发送GET请求时,页面正在刷新,并且您的值丢失了。
您可以将此值存储在会话中。看见http://php.net/manual/features.sessions.php或cookie请参阅http://php.net/manual/features.cookies.php或者在服务器上的某个数据库中。
然后从那里得到它。
首先建议您将值存储在$_SESSION
中,并使用$_POST
为什么使用$_SESSION
&$_POST
因为没有人能破坏你的应用程序。
基本示例(PHP(:
<?php
session_start();
$varCount = 0;
if(isset($_POST['submit'])){
$var = intval($_POST['var']);
$addVar = $var+1;
$_SESSION['newVar'] = $addVar;
}
else{
unset($_SESSION['newVar']);
}
if(isset($_SESSION['newVar'])){
$varCount = intval($_SESSION['newVar']);
echo $varCount;
}
?>
HTML:
<form method="post" action="">
<input type="hidden" name="var" value="<?=$varCount?>">
<input type="submit" name="submit" value="Add">
</form>