【发布时间】:2014-01-23 22:57:56
【问题描述】:
如果我有两个链接,并且我想连续显示它们,那么我应该在 php 中使用什么?
例如:
先显示链接 A,然后显示链接 B,然后再显示链接 A,再显示链接 B。 依次显示这两个链接。
当我点击页面时,它会显示链接 A,当我刷新页面时,它会显示链接 b,反之亦然。
所以我的问题是,如果是的话,是否有任何 php 函数或逻辑,那么它是什么?
【问题讨论】:
如果我有两个链接,并且我想连续显示它们,那么我应该在 php 中使用什么?
例如:
先显示链接 A,然后显示链接 B,然后再显示链接 A,再显示链接 B。 依次显示这两个链接。
当我点击页面时,它会显示链接 A,当我刷新页面时,它会显示链接 b,反之亦然。
所以我的问题是,如果是的话,是否有任何 php 函数或逻辑,那么它是什么?
【问题讨论】:
<?php
if(!isset($_COOKIE["lastLink"])){
setcookie("lastLink","b"); // you can set an expire time.
}
if($_COOKIE["lastLink"] == "a"){
$link = "www.b.com";
setcookie("lastLink","b");
}elseif($_COOKIE["lastLink"] == "b"){
$link = "www.a.com";
setcookie("lastLink","a");
}
echo $link;
?>
关于过期时间等:http://uk.php.net/setcookie
【讨论】:
$_COOKIE["lastLink"] = "a" 和 $_COOKIE["lastLink"] = "b" 更改为 setcookie("lastLink","a"); 和 setcookie("lastLink","b");
$_COOKIE["lastLink"] 部分,并使用函数更改记录的setcookie() 部分。
<?php
if ( isset($_GET['page']))
$page = ($_GET['page'] == 'a') ? 'b' : 'a';
else
$page = 'b';
?>
<a href="index.php?page=<?php echo $page; ?>">Cycle</a>
一个问题:为什么?
【讨论】:
如果您想在点击A链接后将页面更改为B,您可以在链接中存储一个参数(例如,<a href="website.com?nextLink=B">A</a>),然后在服务器端捕获它并使用B链接提供页面(您可以使用许多技巧来获得完全相同的 URL,例如使用 POST 参数而不是 GET 参数)。
如果你想在点击刷新时改变状态,你可以使用cookies来存储当前状态,然后使用这个状态服务器端来切换页面(这里建议:Detect Browser Refresh in Javascript)。
【讨论】: