我想从名为Leave Request的表中更新两个字段,但是当我点击提交按钮时。
<?php
$stmt = $pdo->prepare('UPDATE dbo.[TABLE$Leave Request] dbo.[KPMG$Leave Request].supAprrove_date=?,dbo.[TABLE$Leave Request].supAprrove=? WHERE dbo.[TABLE$Leave Request].id=?');
$stmt->execute(array($adate, $approve, $id));
$adate = $_POST['supAprrove_date'];
$approve =$_POST['supAprrove'];
$id = $_POST['lid'];
//$affected_rows = $stmt->rowCount();
?>
<form id="form1" name="form1" method="post" action="pending_leave.php">
<label>
<select name="supAprrove" id="supAprrove">
<option value="1">Approve</option>
<option value="2">Reject</option>
</select>
</label>
<input name="supAprrove_date" type="hidden" id="supAprrove_date" value="<?php echo date('Y-m-d'); ?>" />
<input type="hidden" name="lid" id="lid" value="<?php echo $data['id']; ?>"/>
<label>
<input type="submit" name="button" id="button" value="Submit" />
</label>
</form>
答案 0 :(得分:0)
创建SQL UPDATE语句的一种方法是
UPDATE table
SET column1 = expression1,
column2 = expression2,
...
[WHERE conditions];
示例:
UPDATE employees
SET last_name = 'Johnson'
WHERE employee_id = 10;
您正在使用预备语句,因此请将“Johnson”部分替换为“?”你完成了。
对于错误处理,您可以使用:
$dbh = new PDO($dsn, $user, $password, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
部分PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
是抛出异常的关键。
有关PDO错误处理的更多信息:http://php.net/manual/en/pdo.error-handling.php