PHP页面的默认值,URL中没有参数

时间:2017-02-09 15:58:39

标签: php arguments default

我是PHP游戏的新手,我的问题是理解为101问题道歉。

我的网站上的子文件夹中有一个index.php。 我知道我可以通过URL将参数传递给页面。

https://example.com/subfolder?id=1234

如果有人导航到

https://example.com/subfolder

没有参数,我如何提供默认的4321?

我从其他Stack Overflow问题中收集的代码是

<?php
  $id = (isset($_GET["id"])) ? $_GET["id"] : "4321";
  echo "<some html>" . $id . "<some more html>";
?>

我也试过

<?php
  if (isset($_GET['id'])) {
    $id = $_GET['id'];
  } else {
    $id = "4321";
  }
  echo "<some html>" . $id . "<some more html>";
?>

我认为这只是写同一件事的另一种方式。

代码在提供URL时从URL中提取参数并且页面工作正常,但在未提供参数时它不提供默认值。我怀疑它与id变量没有定义有关,如果它不在URL中但我不知道。

非常感谢你能提供帮助。

编辑:如果你是对的詹姆斯,我包括我正在使用的实际回声线(没有域名)。其他所有内容与我在上面输入的相同。

echo '<iframe width="70%" padding-bottom="20px" height="900" scrolling="yes" frameborder="no"
        src="https://example.com/eventlist/415c564448271d0f1504/?point_of_sale_id=' . $id . '"></iframe>';

编辑:当我查看页面源代码时,这是从PHP返回的内容

<iframe width="70%" padding-bottom="20px" height="900" scrolling="yes" frameborder="no"
        src="https://example.com/eventlist/415c564448271d0f1504/?point_of_sale_id="></iframe>

1 个答案:

答案 0 :(得分:0)

这是我开始工作的代码,我不得不额外添加一步。

<?php
  $id = $_GET["id"];
  $linkId = (isset($id)) ? $id : "4321";
  echo "<some html>" . $linkId . "<some more html>";
?>

我有兴趣知道是否有人可以解释为什么原来没有工作。