Php 变量未显示在输出中?

Php 变量未显示在输出中?,php,Php,我执行以下操作 $output = $_GET['_url']; echo $output; //displays the url in $output, correctly if ( isset($_POST['email'])){ //'email' is not empty echo "url: " . $output; //it displays "url: " but does not display the url from $output } 我输入一封电子邮件,在提交时,它

我执行以下操作

$output = $_GET['_url'];
echo $output;
//displays the url in $output, correctly

if ( isset($_POST['email'])){
//'email' is not empty

echo "url: " . $output;
//it displays "url: " but does not display the url from $output
}
我输入一封电子邮件,在提交时,它不会在if post期间回显$output var。。只在它之外


为什么会出现这种情况?我可以做些什么来解决它?

您将$u GET和$u POST混合在一起

尝试添加:

var_dump($_GET);
var_dump($_POST);

看看你能得到什么。这将帮助您了解发生了什么情况

您可能混合了GET和POST请求。请求是获得还是发布?不可能两者都有


编辑:它可以,但仍然可以检查表单是否以GET或POST的形式发送,并相应地更新变量。除非您向url发送请求,比如someurl?var=something。

您提供的代码不可能这样做。可能您的意思是
echo“url:”$_POST['email']
?顺便问一下,为什么不把变量放在引号中呢?如中所示,echo“url:$output”@虫族:还有别的办法吗@乔恩:没有:)一旦用户发布了电子邮件,我想在尝试/捕获后使用URL@你说得对,我应该!我明白了。他交替调用脚本作为get和post。当他将其作为get调用时,他正确地看到了url。当他将其作为帖子调用时,他看到的是
url:
,其他什么都没有。请求不能是,但超全局的内容是根据数据源填充的。因此,您可以使用数据体中的一些POST数据发送POST请求,并通过url传递一些参数。因此,在php中,您将同时拥有$\u POST和$\u GET变量。这将非常有趣。即使这两个变量都可以设置为soehow,您是如何设置的?有没有一种方法可以同时执行HTTP GET和POST请求?希望你的意思不是像someurl?request=whatever那样将请求发布到url?只是好奇,不是说我知道best@JanZyka:我的意思是使用
file?param=value
url@DT85字体它从哪里来并不重要。你给我们的代码不能像你描述的那样运行。我的坏消息是,我一开始过滤掉了不可能的场景:)你的问题是,“我能做些什么来修复它?”我的回答是添加几个
var\u dump
s(或者
print\u r
s,如果你愿意的话)这样您就可以确定您的
$\u GET
$\u POST
数组中有什么内容。一旦你知道了这一点,解决这个问题将是微不足道的。@awm:我在没有关于var的任何内容时发表了我的评论_dumps@zerkms对不起,我不小心以为你的评论来自提问者,但显然不是:(我上面的评论是针对DT85的。@awm:post之前,$\u GET有7个字符,并显示在转储中,而$\u post是空的。在$\u post之后,$\u post有电子邮件地址,而$\u GET是空的。您所说的“发布之前”和“发布之后”是什么意思?