我有一个问题,有点两部分(虽然各部分齐头并进)。我已经开始汲取PHP,并且我想在点击图像时做两件事。PHP上的链接点击效果
我想点击
- 增量会话变量,说
$_SESSION['entry']
。 - 重新载入当前页面(比如
index.php
)。
我应该怎么办?要清楚的是,我并不是要求某人为我编码,我只是希望指出正确的方向,因为我不太确定最好的方法是什么。
我有一个问题,有点两部分(虽然各部分齐头并进)。我已经开始汲取PHP,并且我想在点击图像时做两件事。PHP上的链接点击效果
我想点击
$_SESSION['entry']
。index.php
)。我应该怎么办?要清楚的是,我并不是要求某人为我编码,我只是希望指出正确的方向,因为我不太确定最好的方法是什么。
那么,如果href
指向同一页面,则链接将“重新加载”页面。所以,你需要做的就是告诉PHP你想增加会话变量。你可以使用一个GET变量来做到这一点:
<a href="index.php?increment=true">Increment the counter</a>
,然后在index.php
:
if (isset($_GET['increment']) && $_GET['increment'] == 'true') {
$_SESSION['counter']++;
}
这里假设你已经初始化会话变量counter
在一些点。如果您不熟悉这些功能,可以查看精彩的PHP docs以解释上面使用的功能。
<a href="?incr=1"><img src=.../></a>
<?php if($_GET['incr']) $_SESSION['entry']++; ?>
这应该给你的想法。
要做到这一点的方法是将图像链接到“本身”$_SERVER['PHP_SELF']
也许或者仅仅指向/index.php,然后检查会话以查看是否设置了该值,如果是,则增加它。与形象,周围有一个链接
<?php
session_start();
if (isset($_SESSION['entry'])) {
$_SESSION['entry']++;
} else {
$_SESSION['entry'] = 1;
}
// if entry is greater than some value in your DB, then set it back to 1
+1哦,我喜欢那样。 – Herbert
$_GET[ 'imageClick' ]
等于1
增量会话可变imageClick
变量如果您担心index.php?imageClick=1
可以通过浏览器在它的历史,并为此可以使用没有实际图像点击重新加载记住:
$_POST[ 'imageClick_x' ]
或`$_POST[ 'imageClick_y' ]
设置,并增加了会话变量您可以对增加$ _SESSION ['entry']的PHP脚本执行AJAX调用。
非常有帮助,谢谢(并为您的编辑澄清我的问题)。 –