这是我的问题:
我的wordpress中有一个.php文件,可以执行以下操作:
以下是代码:
function loginForm(){
echo'
<div id="loginform">
<form action="" method="post">
<p>Please enter your name to continue:</p>
<label for="name">Name:</label>
<input type="text" name="name" id="name" />
<input type="submit" name="enter" id="enter" value="Enter" />
</form>
</div>
';
}
if(isset($_POST['enter'])){
if(isset($_POST['name']) && $_POST['name'] != ""){
//do smth
}
else{
echo '<span class="error">Please type in a name</span>';
}
}
但问题在于:当我点击而不输入任何名称时,它没关系,它按预期工作:它返回同一页面并显示错误消息。但是,如果我输入任何名称,它将返回我&#34; Page Not Found&#34;,并且POST请求失败(404)
会发生什么事情才会发生这样的事情?
PS:请原谅我可能不好的英语答案 0 :(得分:1)
<input type="text" name="name" id="name" />
这将导致wordpress特有的问题,它是一个保留字段名称。 所以改名称。
<input type="text" name="aname" id="name" />
应该没有问题。
答案 1 :(得分:0)
,您需要指定action
。这应该有效:
action="<?php echo get_permalink(); ?>