【问题标题】:Is there any way to pass a variable through a link other than something like "?token=827273"除了“?token = 827273”之类的链接之外,还有什么方法可以通过链接传递变量
【发布时间】:2013-10-01 18:17:37
【问题描述】:

应用的工作原理如下:

企业将使用我们的嵌入代码将我们的录音小部件放在他们的网站上。他们的用户将录制视频,并且在该视频获得批准后,将向录制视频的用户发送一封电子邮件,其中包含指向企业添加了我们的嵌入代码以显示这些视频的页面的链接。

嵌入代码显示一个 php 文件,该文件根据 url 中的令牌值知道要显示哪个视频。我们将?token=<?php echo $token ?> 添加到每个网址。

我们最新的测试主题具有 url 结构 www.url.com/Page.asp?NavID=3786,添加 ?token=<?php echo $token ?> 会弄乱他们的 NavID 并显示错误。

如果无法更改他们的代码,是否有另一种方法可以传递我们的 $token 变量(通过链接或其他方式)而不会弄乱他们的变量?

【问题讨论】:

  • www.url.com/Page.asp?NavID=3786&token=<?php echo $token ?>?
  • 应该是一个而不是另一个?

标签: php url variables


【解决方案1】:

要传递多个$_GET 变量,只需在它们之间使用& 而不是第二个?

www.url.com/Page.asp?NavID=3786&token=MyToken

【讨论】:

  • 所以,我会编写一个函数来检查 url 是否已经有一个 $_GET 变量。如果有,我会添加“&token=”,如果没有,我会添加“?token="?
  • @Christian 是的,如果你有 ?在 url 中(意味着 GET 变量已经存在)然后添加 &token= 否则 ?token=
  • parse_str, http_build_query 可能会有帮助
  • 为什么不将令牌作为 http 标头传递,然后您将拥有一个更清晰的 url。我不确定您的情况,但通常发送令牌用于身份验证或识别目的。这就是为什么它会创建一个更清晰的 url 来删除那里的表单并将每个请求作为 http 标头发送
  • 酷,谢谢大家!我会尽快将此答案标记为正确。
猜你喜欢
  • 1970-01-01
  • 2017-04-20
  • 1970-01-01
  • 2021-12-20
  • 1970-01-01
  • 2021-09-02
  • 2012-06-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多