我已經瀏覽了WWW和論壇,但找不到工作答案。我要更新.........../post.php中的id我的帖子= 19通過php在mysql數據庫中更新數據
這是我的函數:
function update_user($conn) {
if(isset($_GET['id'])) {
$id = $_GET['id'];
$name = $_POST['name'];
$age = $_POST['age'];
$sql = "UPDATE users SET name =':name', age = ':age' WHERE id=':id'";
$query = $conn->prepare($sql);
$query->execute(array(':name'=>$name, ':age'=>$age, ':id' => $id));
}
}
這是我的表格:
<h3>Update a user</h3>
<?php update_user($conn) ?>
<form name="myForm2" method="POST" action= "">
<label>Name:</label><input type="text" id="name" name="name">
<label>Age:</label><input type="text" id= "age" name="age">
<input type="submit" value="add" name="update">
我沒有錯誤,但POST只是返回沒有更新的舊記錄,我填寫了表單。
希望有人能幫助我,謝謝你。 Bas
PS。 $ conn是正確的,並且在插入或打印帖子時工作。
擺脫佔位符周圍的單引號。他們不需要。 –
你在哪裏發送'$ _GET ['id']'?你的表單發送一個'POST',所以也許整個塊永遠不會運行?如果您發送該消息,請參閱上面的註釋。 – chris85
@JohnConde你的答案奏效!我偷了這個人的代碼。現在,當我去...../post.php?id = 19是說: 注意:未定義的索引:名稱在/config.php在線72 注意:未定義的索引:age in /config.php在線73 我在這裏錯過了什麼嗎? –