我有一个带有 4 个输入的 html 表单,但其中 1 个输入连接到 mysql 表 usersettings,其他 3 个输入连接到表 userinfo,4 个输入都是更新查询,不需要任何字段填写。这是表格:
<form method="post">
<div id="settingsFirst">
<div id="sfInner">
<div id="soDelete1">
Selecteer voor hoe lang uw taken actief blijven:
</div>
<div id="soDelete2">
<select id="selectDelete" name="deleteValue">
<option value="" disabled selected>Selecteer:</option>
<option value="1">1 uur</option>
<option value="2">12 uur</option>
<option value="3">1 dag</option>
<option value="4">Elke week</option>
</select>
</div>
</div>
</div>
<div id="settingsSecond">
<div id="wwChange1">
Wachtwoord veranderen:
</div>
<div id="wwChange2">
Oud wachtwoord: <input id="wwChanger1" name="oldWW" type="password"></input><br>
Nieuw wachtwoord: <input id="wwChanger2" name="newWW1" type="password"></input><br>
Herhaal wachtwoord: <input id="wwChanger3" name="newWW2" type="password"></input>
</div>
<div id="wwChange3">
<input id="saveSettings" name="submit" type="submit" value="Opslaan"></input>
</div>
</div>
</form>
以及 PHP 上传脚本:
<?php
if(isset($_POST['submit'])){
if(isset($_POST['deleteValue'])){
if($q8 = $db->prepare("UPDATE usersettings SET deletetimer = " . $deletetimer . " WHERE studid = '" . $studid . "'")){
$q8->execute();
}
}
if(isset($_POST['wwChanger1']) && isset($newWachtwoord) && isset($newWachtwoordHH)){
if($_POST['wwChanger1'] == $wachtwoord && $newWachtwoord == $newWachtwoordHH){
if($q9 = $db->prepare("UPDATE userinfo SET wachtwoord = '" . $newWachtwoord . "' WHERE studid = '" . $studid . "'")){
$q9->execute();
}
}
}
}
?>
我尝试仅上传填写的表单的相关部分,因此如果填写了select
,则应更新用户设置表,如果填写了密码更改,则应更新用户信息表,如果所有内容都填满,则两个表都应该更新。但由于某种原因,当我尝试要求更改密码时,它不会更新我的表,并且我的旧密码仍然在那里。我也没有收到任何错误。怎么了?
最佳答案
您的验证应该是:
if(isset($_POST['oldWW']) && isset($newWachtwoord) && isset($newWachtwoordHH)){
if($_POST['oldWW'] == $wachtwoord && $newWachtwoord == $newWachtwoordHH){
if($q9 = $db->prepare("UPDATE userinfo SET wachtwoord = '" . $newWachtwoord . "' WHERE studid = '" . $studid . "'")){
$q9->execute();
}
}
}
假设您的其他变量 $wachtwoord 设置正确。 您可能也应该通过 $_POST 获取这些内容。
关于php - 如何使用 PHP 只上传 HTML 表单的特定部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27720855/