【问题标题】:How do I use php to link to a page with variables in the url?如何使用 php 链接到 url 中有变量的页面?
【发布时间】:2012-11-19 17:06:09
【问题描述】:

所以假设当前的 url 是......

.../friends.php?episode=1&season=1

我怎样才能有一个默认的“下一个”按钮来转到下一集。

我知道如何用

检索变量

$_GET[episode]$_GET[season] 并将其保存到变量中。

然后我可以将它们中的一个添加到一个限制...(和减去)

但我不知道如何使它成为我可以按以转到下一个或上一个的链接。

【问题讨论】:

  • 您可以轻松地通过从 url 获取值并从变量中加减 1,检查我的代码如下

标签: php get next


【解决方案1】:

只需构建您想要的链接,然后将其放入a HTML 元素中:

$link = "./friends.php?episode=" . $_GET['episode'] . "&season=" . $_GET['season'];
echo "<a href='$link'>Next episode</a>";

【讨论】:

    【解决方案2】:

    工作代码

    <?php
    $season = $_GET['season'];
    $episode = $_GET['episode'];
    
    echo '<a href="friends.php?episode='.($episode - 1).'&season='.$season.'"> Back Episode  </a>-----';
    echo '<a href="friends.php?episode='.($episode + 1).'&season='.$season.'">  Forward Episode  </a><br>';
    
    echo '<a href="friends.php?episode='.$episode.'&season='.($season-1).'"> Back Season</a>-------';
    echo '<a href="friends.php?episode='.$episode.'&season='.($season+1).'">Forward Season</a>';
    

    【讨论】:

      【解决方案3】:

      你可以使用http_build_query函数:

      $season = $_GET["season"];
      $episode = $_GET["episode"];
      $query = http_build_query(array("season" => $season, "episode" => $episode+1));
      

      编辑:我已经切换了剧集和季节增量,现在它增加了剧集。

      然后将其与链接连接:

      echo "<a href='/page.php?$query'>Next Episode</a>";
      

      【讨论】:

      • 不错,我没听说过这个功能!如果您需要,文档就在这里:php.net/manual/en/function.http-build-query.php
      • 双引号 - 它们倾向于解析其中的变量,因此它们比单引号要慢一些。这应该是 $_GET['season']$_GET['episode']
      • 没错,但在这种情况下,额外解析造成的减速是如此之小,几乎可以忽略 :)
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-11-19
      • 2015-02-05
      • 1970-01-01
      • 1970-01-01
      • 2023-03-13
      • 2013-06-07
      • 2019-03-08
      相关资源
      最近更新 更多