我制作了一个使用3种形式的页面。我可以使用$ _POST var捕获帖子信息中的2个表单。然而,我的一个表单返回一个空的$ _POST var。我可以使用旧的$ _HTTP_POST_VARS
来捕获它我已将表单与其他表单匹配,并且找不到任何差异。 我的php版本是5.2.17 var_dump($ _ POST)或print_r($ _ POST)都没有给我任何结果。
我最终使用$ _HTTP_POST_VARS让它正常工作,但它继续喋喋不休,因为$ _POST是为了替换$ _HTTP_POST_VARS,因为php 4.1(或接近它的东西)
<p>Wachtwoord wijzigen</p>
<form id='changepwsd' name='changepswd' method='POST' action='".basename($_SERVER['PHP_SELF'])."' enctype='application/x-www-form-urlencoded'>
<label for='old' style='width: 170px; display: inline-block;'>Vorig wachtwoord:</label>
<input type='password' name='old' /><br />
<label for='new' style='width: 170px; display: inline-block;'>Nieuw wachtwoord:</label>
<input type='password' name='new' /><br />
<label for='confirm' style='width: 170px; display: inline-block;'>Bevestig wachtwoord:</label>
<input type='password' name='confirm' /><br />
<input type='submit' value='Wijzig' name='changepwsd' style='width:120px'/>
</form>
<br><br>
对应的php:
session_start();
include 'mysql.php';
$mysql = new MySQL;
$now = date("Y-m-d H:i:s");
$mysql->db_connect();
if(!empty($_POST['changepwsd']))
{
$mysql->select_qry('*','users','Name',$_SESSION['User']['Name']);
while($row = $mysql->qry_result->fetch_assoc())
{
$user = $row;
}
if(md5($_POST['old']) == $user['Password'])
{
if($_POST['new'] == $_POST['confirm'])
{
$resultaat = "Uw wachtwoord werd gewijzigd";
$mysql->qry("UPDATE users SET Password='".md5($_POST['new'])."' WHERE Name='".$_SESSION['User']['Name']."'");
}
else
{
$resultaat = "Wachtwoorden komen niet overeen.<br>Uw wachtwoord werd <b>niet</b>gewijzigd.";
}
}
else
{
$resultaat = "Uw oud wachtwoord klopt niet.<br>Uw wachtwoord werd <b>niet</b>gewijzigd.";
}
return $resultaat;
}