【问题标题】:Can the GET variables be extracted?可以提取 GET 变量吗?
【发布时间】:2016-10-29 16:21:57
【问题描述】:

我正在尝试使用 PHP 从此 URL 字符串中存储 GET 变量,但似乎不起作用...

domain.local/welcome?fwd=cd&data=%7B"email"%3A"example%40example.co.uk"%7D

我试过的PHP是:

$email = htmlspecialchars($_GET["email"]);

还有……

$email = $_GET["email"];

都不行,请问有什么想法吗? (顺便说一句,我无法更改 URL 字符串)

【问题讨论】:

  • 它应该在$_GET['data']email 不是该 URL 中的参数。看起来它是通过 GET 发送的 JSON .. eval.in/668689
  • 感谢 Chris85 发现这一点 :)

标签: php html forms get


【解决方案1】:

关注这个:

您的网址是: domain.local/welcome??fwd=cd&data={"email":"example@example.co.uk"}

<?php
$fwd = $_GET['fwd']; //output cd
$data = json_decode($_GET['data']); //

echo $data->email; //output is example@example.co.uk
?>

如果你的网址喜欢 data={"email":"example@example.co.uk","name":"myname","mobile":123456"}

然后你可以使用下面的例子:

echo $data->name; //output myname
echo $data->mobile; //output 123456

【讨论】:

  • 谢谢@razibalmamun。这看起来不错,但是我仍在努力使用您的代码获得任何输出。我在使用 PHP 5.5.23 的 Mac 上使用 MAMP 3(如果有帮助的话)。此外,经过一番谷歌搜索后,我在 MAMP php.ini 中添加了以下内容...magic_quotes_gpc = Offmagic_quotes_runtime = Off
  • 如果我的回答对你有用,请接受我的回答。谢谢
  • 我在你的代码之后立即添加了这个...echo json_last_error_msg();,它返回Syntax error
  • 我已经在该页面上添加了代码,看起来它没有返回错误,但不幸的是它仍然无法正常工作
猜你喜欢
  • 2012-10-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-06
  • 2022-08-05
  • 1970-01-01
相关资源
最近更新 更多