Php 未使用isset读取url中的变量

Php 未使用isset读取url中的变量,php,wordpress,Php,Wordpress,我的地址是www.mysite.com/test url?tx=test if (isset($_GET['tx'])) { echo 'Success'; } 然而,根本没有发生任何事情,只是没有读取变量在那里的事实看起来就像您在.htaccess文件中使用的一样 因此,在.htaccess中,您将有类似的内容: RewriteRule ^([^/\.]+)?$ index.php?page=$1 [L] 您需要像这样添加QSA: RewriteRule ^([^/\.]+)?

我的地址是www.mysite.com/test url?tx=test

if (isset($_GET['tx'])) {
    echo 'Success';

 }
然而,根本没有发生任何事情,只是没有读取变量在那里的事实

看起来就像您在
.htaccess
文件中使用的一样

因此,在
.htaccess
中,您将有类似的内容:

RewriteRule ^([^/\.]+)?$ index.php?page=$1 [L]
您需要像这样添加
QSA

RewriteRule ^([^/\.]+)?$ index.php?page=$1 [L,QSA]
                                             ^^^^

这会告诉服务器附加查询字符串

从你写的评论中我看到,你提到你在WordPress上

TBH,我不是Wordpress的人,因此我无法在更大范围内帮助解决问题,但请尝试以下方法,添加一个额外的条件语句来匹配GET中的单词
test

以下操作在我的服务器(不是Wordpress)上成功。如果URL是
test URL?tx=
它将失败,如果它是
test URL?tx=testx
它也将失败,因此只有
test URL?tx=test
才会被视为成功

<?php
if (isset($_GET['tx']) && $_GET['tx'] == test) {
    echo 'Success.';

 }

else {
echo "Sorry, the parameter is not set or is invalid.";
}

感谢它的wordpress,我试过了,但不幸的是,它仍然没有起作用。如果在URL中将
替换为
&
,会发生什么情况?你能发布
.htaccess
文件的内容吗?嗨,我找到了一种解决方法,使用
get\u query\u var
并在我的函数中添加get变量。这是个好消息Adrian。你是不是碰巧从我给你的链接中找到的?我注意到它在里面@阿德里亚尼,你的密码帮我查过了。你的
.htaccess
中可能有什么东西在捉弄你或其他地方。试试
如果(isset($\u GET['tx'])&&$\u GET['tx']==测试){
谢谢,但肯定与wordpress有关,因为出于某些原因,这也不起作用Adrian。我希望能进一步帮助你,但正如我所说的(在我的回答中)我不是Wordpress的人,我认为通过添加附加的条件语句,它会有所帮助。@AdrianThanks无论如何都需要帮助:)不客气@Adrian-如果我想到什么(或找到什么),我会让你知道。我从哪里找到了第一个。我会在谷歌上搜索
“If(isset($\u GET not working with Wordpress php)”
@Adrian,我相信你会在那里找到很多其他的结果。