我有一个问题,即我使用POST方法发布我的表单但是当我回显$ _SERVER [' REQUEST_METHOD']结果是GET,为什么? 这是我的代码
<div align="center">
<form action="../application/components/check.php" method="POST" >
<table align='center' cellspacing='20px;' class='menubg'>
<tr>
<td colspan='2'>
<div style='height:30px;'></div>
</td>
</tr>
<tr>
<td align='right' style='color:#ffffff; vertical-align:middle; font-family:arial; font-size:13px;'>User Name</td>
<td align='left'> <input type="text" name="uname" value="" onfocus="this.select()"/> </td>
</tr>
<tr>
<td align='right' style='color:#ffffff; vertical-align:middle; font-family:arial; font-size:13px;'>Password</td >
<td align='left'>
<input type="password" name="pass" value="" onfocus="this.select()"/> </td>
</tr>
<tr>
<td colspan='2' align='right'>
<input type='submit' value='ENTER'/>
</td>
</tr>
</table>
</form>
在check.php上,我写得像
if($_SERVER['REQUEST_METHOD'] == "POST") {
//code
}
它不会进去,之后我尝试
echo $_SERVER['REQUEST_METHOD'] ;
结果返回GET
。
我已经尝试了另外一台电脑运行此代码,没关系,但来到我的电脑却不行, 我的电脑使用xampp,所以有什么不同,以及如何解决它?
答案 0 :(得分:0)
这是因为$_SERVER['REQUEST_METHOD']
包含请求方法,即使用了哪种方法来访问该页面(几乎在您只是请求网页的所有情况下都会GET
来自浏览器),而不是从表单提交的任何POST
或GET
数据。从表单提交的POST
数据应通过$_POST
接口。
答案 1 :(得分:0)
尝试if($ _ POST)来检查它是否是POST。由于所有页面都设置了$ _GET,因此if($ _ GET)将无效。您也可以尝试if(count($ _ GET)&gt; 0)。这将告诉你是否有任何$ _GET数据。