【发布时间】:2016-10-17 15:19:08
【问题描述】:
我只想更新表中 CHARGES 的值。我有一个错误:
注意:未定义索引:第 4 行 C:\xampp\htdocs\VCCDMStry\pages\save_receipt.php 中的 id
注意:未定义索引:C:\xampp\htdocs\VCCDMStry\pages\save_receipt.php 第 5 行收费
致命错误:未捕获异常 'PDOException' 并带有消息 'SQLSTATE[42000]:语法错误或访问冲突:1064 您的 SQL 语法有错误;检查与您的 MariaDB 服务器版本相对应的手册,以在 C:\xampp\htdocs\VCCDMStry\pages\save_receipt.php:8 堆栈跟踪:#0 C 中的第 1 行的“WHERE id = NULL”附近使用正确的语法:\xampp\htdocs\VCCDMStry\pages\save_receipt.php(8): PDOStatement->execute(Array) #1 {main} 在第 8 行的 C:\xampp\htdocs\VCCDMStry\pages\save_receipt.php 中抛出
这是我的获取代码:
<?php
$sql = "SELECT * FROM tenant
LEFT JOIN stall ON stall.stall_id = tenant.stall_id
LEFT JOIN rent ON rent.tenant_id = tenant.tenant_id
LEFT JOIN receipt ON receipt.tenant_id = tenant.tenant_id
LEFT JOIN rate ON rate.rate_id = tenant.rate_id
WHERE rent.rent_status = ? AND rate.rate_id = ?
";
$query = $conn->prepare($sql);
$query->execute(array(1,1));
$fetch = $query->fetchAll();
foreach ($fetch as $key => $value) { ?>
<tr>
<td>
<?=$value['tenant_fname']." ".$value['tenant_mname']." ".$value['tenant_lname'];?>
</td>
<td>
<?=$value['stall_number'];?>
</td>
<td>
<?=$value['charges'];?>
</td>
<td class = "center" style = "text-align:center;">
<a href = "#receipt<?php echo $value['tenant_id'];?>" data-toggle="modal" class="btn btn-outline btn-xs btn-primary"> Make Receipt
</a>
</td>
</tr>
<?php include 'receipt_modal.php';?>
<?php }?>
这是我的更新代码:
<?php
include 'dbcon.php';
$receipt_id = $_POST['id'];
$charges = $_POST['charges'];
$query = $conn->prepare("UPDATE receipt SET charges = ? , WHERE id = ? ");
$query->execute(array($charges,$receipt_id));
header ('location:elecbills.php');
?>
以及Modal的代码:
<div class="form-group">
<input type = "hidden" class="form-control" name= "id" value = "<?php echo $value['tenant_id'];?>">
<label class="col-sm-4 control-label">PRESENT </label>: <input class = "custom-input" id="charges" name="charges"></input>
</div>
【问题讨论】:
-
$_POST中不存在这些值。你没有显示你的表单标签,所以我们不知道你的方法是 GET 还是 POST。您可以尝试改用$_REQUEST,或仔细检查您的方法。 -
@aynber 这是我的表单
-
@aynber 我已经尝试了 $_REQUEST 但它仍然无法正常工作,并且错误是一样的,
-
但是您在发布的表单中有
id和charges输入字段 -
我会说
Modal需要<form>....</form>