微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

单击锚标记时如何防止数据重置

如何解决单击锚标记时如何防止数据重置

对于学校,我和几个朋友必须制作一个网站,其中 PHP 脚本从带有 $_GET 变量的 URL 中获取数据。

我们可以从 URL 中检索数据,例如:index.PHP?data=set

这是我不确定如何制作的部分。我们希望在单击锚标记时设置此数据,例如: <a href="?sortby=rating">rating</a> 并且希望能够在不清除前一个标签中的数据的情况下使用另一个标记设置更多数据,因此 url 可以变成类似:index.PHP?data=set&sortby=rating

我们都觉得用纯 html 可以很容易地做到这一点,但我们一直无法找到如何做到这一点。除非我们只需要编写 PHP 代码,根据是否已设置数据来更改锚标记中的链接,然后使用 PHP<a href="?sortby=rating">rating</a> 更改为 <a href="?sortby=rating&data=set">rating</a>

如果我解释得不好和/或如果这是一件非常简单的事情,我们一直无法弄清楚在谷歌上寻找什么,我深表歉意。如果唯一的方法是使用PHP,那么我们可以解决它,如果不是,请告诉我如何正确操作。

谢谢

解决方法

$_REQUEST global 将帮助您检索所有查询数据,然后您必须决定是否: 这是一个新的查询参数,您必须将其添加到您的查询字符串中 或者它是您需要更新的现有参数。

<?php
   function query_stack($query_name,$query_value){
       $filled = "?";
       foreach ($_REQUEST as $param => $value)
          if($param != $query_name) $filled .= "${param}=${value}&";  // it's new key so we add it to our stack
       return $filled."${query_name}=${query_value}"; // we have to update/reassign value of this key
   }
?>


<a href="<?php echo query_stack('sort','stars') ?>"><b>Sort By:</b> Stars</a><hr>
<a href="<?php echo query_stack('sort','date') ?>"><b>Sort By:</b> Date</a><hr>
<a href="<?php echo query_stack('view','asc') ?>"><b>View:</b> Ascending</a><hr>
<a href="<?php echo query_stack('view','des') ?>"><b>View:</b> Descending</a>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。