PHP MYSQLi数据库未更新
我已经找了三个晚上的问题了。它让我做噩梦。请帮忙。我认为我的代码已经很完美了。有人能帮我修改一下密码,告诉我出了什么问题吗PHP MYSQLi数据库未更新,php,forms,mysqli,Php,Forms,Mysqli,我已经找了三个晚上的问题了。它让我做噩梦。请帮忙。我认为我的代码已经很完美了。有人能帮我修改一下密码,告诉我出了什么问题吗 $sql = "SELECT py.idPembayaran, p.idPelajar, p.nama, b.namaBarangan, pb.kuantiti, b.harga, py.jumlahBayaran, py.statusPembayaran, py.statusPenghantaran, pb.tarikhPembelian FROM barangan
$sql = "SELECT py.idPembayaran, p.idPelajar, p.nama, b.namaBarangan,
pb.kuantiti, b.harga, py.jumlahBayaran, py.statusPembayaran,
py.statusPenghantaran, pb.tarikhPembelian FROM barangan b
INNER JOIN pembelian pb on pb.idBarangan = b.idBarangan
INNER JOIN pembayaran py on py.idPembelian = pb.idPembelian
INNER JOIN pelajar p on p.idPelajar = pb.idPelajar";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
// output data of each row
while($row = mysqli_fetch_assoc($result)) {
echo '
<form method="POST" action="purchaselist.php">
<tr>
<input type="hidden" name="idPembayaran" value="<?php echo $idPembayaran ?>">
<td>'.$row["idPembayaran"].'</td>
<td>'.$row["idPelajar"].'</td>
<td>'.$row["nama"].'</td>
<td>'.$row["namaBarangan"].'</td>
<td>'.$row["kuantiti"].'</td>
<td>'.$row["harga"].'</td>
<td>'.$row["jumlahBayaran"].'</td>
<td>
<select name="statusPembayaran">
<option value="In process">In process</option>
<option value="Successful">Successful</option>
</select>
</td>
<td>
<select name="statusPenghantaran">
<option value="In process">In process</option>
<option value="Arrived">Arrived</option>
</select>
</td>
<td>'.$row["tarikhPembelian"].'</td>
<td><input type="submit" name="submit" value="Update"></td>
</tr>
</form>
';
}
}
if (!empty($_POST["submit"])) {
$idPembayaran = $_POST["idPembayaran"];
$statusPembayaran = $_POST["statusPembayaran"];
$statusPenghantaran = $_POST["statusPenghantaran"];
$sql = "UPDATE pembayaran SET statusPembayaran ='".$statusPembayaran."', statusPenghantaran ='".$statusPenghantaran."' WHERE idPembayaran = '".$idPembayaran."'";
if(mysqli_query($conn, $sql)) {
echo "
<script>
alert('test');
window.location.href = 'purchaselist.php';
</script>
";
}
else {
echo "Update error.";
}
}
$sql=“选择py.idPembayaran、p.idPelajar、p.nama、b.namaBarangan、,
pb.Kuantti,b.harga,py.jumlahBayaran,py.statusPembayaran,
barangan b的py.statusPenghantaran,pb.Tarikhpenbelian
pb.idBarangan=b.idBarangan上的内连接pembelian pb
内部连接pembayaran py on py.idpenbelian=pb.idpenbelian
p.idPelajar=pb.idPelajar”上的内部连接pelajar p;
$result=mysqli\u查询($conn,$sql);
如果(mysqli_num_行($result)>0){
//每行的输出数据
while($row=mysqli\u fetch\u assoc($result)){
回声'
当您首先为字段idPembayaran
设置值时,您已经
<input type="hidden" name="idPembayaran" value="<?php echo $idPembayaran ?>">
echo“Update error.”
这对您没有帮助。请改用mysqli\u error($conn)
并启用错误报告。感谢您的快速回复。但这不是问题所在。if(mysqli\u query($conn,$sql)){
已执行,并且没有错误,但在我按下按钮后数据库没有更新。关于>?使用mysqli\u受影响的行()
还有。另外,当你完成后,你可能会想把连接的SQL字符串换成一个准备好的语句。这种代码很容易受到SQL注入的攻击。事实上,如果你的输入包括引号、撇号或其他mySQL语法,你可能会用错误的输入中断你的查询。谢谢你,兄弟。我现在可以睡觉了终于有人解决了我的问题!
<input type="hidden" name="idPembayaran" value="<?php echo $row["idPembayaran"]; ?>">