Php searchword结尾的反斜杠会打断自定义搜索表单

Php searchword结尾的反斜杠会打断自定义搜索表单,php,wordpress,Php,Wordpress,我无意中发现,每当搜索结束时出现反斜杠时,单击“提交”后的页面将返回一个已损坏的搜索表单 在我的例子中,提交按钮变成了一个文本区域 使用Google Chrome的“inspect元素”,我看到我的搜索表单变成了这样: <form method="get" action=""> <input type="hidden" name="type" value="books"> <input type="text" name="search

我无意中发现,每当搜索结束时出现反斜杠时,单击“提交”后的页面将返回一个已损坏的搜索表单

在我的例子中,提交按钮变成了一个文本区域

使用Google Chrome的“inspect元素”,我看到我的搜索表单变成了这样:

<form method="get" action="">
        <input type="hidden" name="type" value="books">
        <input type="text" name="search" value="\">        <input type="&gt;
    &lt;/form&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div id=" sidebar"="" class="sidebar widget-area"></form>
另外,我使用这个自定义搜索表单搜索自定义字段,并使用Pods插件显示生成的自定义帖子类型。不过,这似乎不是Pods插件的问题


另外,这似乎与其他主题或插件没有冲突。

我做了一些测试,我猜您的问题被误解了,这段代码应该可以工作:

<form action="" method="get">
<input type="text" name="search" value="<?php echo urldecode($_GET['search']); ?>">
<input type="submit" value="Search">
<input type="checkbox" name="title">
</form>


我试过几十次卫生和逃跑。但最终,只有preg_replace可以对付这个讨厌的反斜杠。

当数据发送到处理脚本时,您需要转义数据。显示当您单击“搜索”时调用的脚本(在服务器端)。我正在使用搜索表单和pods插件。数据是由它处理的,他们坚持认为它是转义的。他们说这可能是wordpress的bug。请参阅我的op文章底部的链接。唯一确定的方法是打开脚本并亲自查看。我在测试页面上尝试了该表单。基本上,表单是故意不做任何事情的。搜索一个反斜杠,搜索表单被破坏了,就像我在op post上说的那样。使用默认wordpress二十三主题完成,没有启用插件。我想知道这是否是一个孤立的情况,或者是否有其他wordpress用户遇到同样的情况?因为我不记得在wordpress更新之前遇到过这个问题。很抱歉,它不起作用。反斜杠仍然会打断搜索表单,将提交按钮变成文本区域=(使用默认wordpress二十三主题完成,未启用插件。您可以对$GT['search'];?进行回显,然后在urldecode?中对其进行回显,并将结果粘贴到此处吗?好的,如果我搜索反斜杠\、
echo$\u GET['search'];
echo urldecode($\u GET['search']));
将分别导致\\和\\。这意味着在提交值时不会对值进行编码。在提交表单时,而不是在加载html时,需要清理文本输入值,echo$\u GET['search']必须为\输出%5C,因此提交表单时代码有问题,但如何清理它?现在我很困惑。我尝试了“清理文本字段($\u GET['search']),但没有成功。
<form action="" method="get">
<input type="text" name="search" value="<?php echo urldecode($_GET['search']); ?>">
<input type="submit" value="Search">
<input type="checkbox" name="title">
</form>