0
我有一個表中的數據庫生成的內容與編輯和刪除按鈕在行末尾的形式。爲什麼要刪除按鈕空白編輯按鈕執行
<td>
<form action="?" method="post">
<div class="">
<input type="hidden" name="id" value="<?php htmlspecialchars($item['id']); ?>">
<input type="hidden" name="action" value="edit_daily_shift_report">
<input type="submit" value="Edit" onclick="return confirm('Edit this report?');">
<input type="hidden" name="action" value="delete_daily_shift_report">
<input type="submit" value="Delete" onclick="return confirm('Delete this report?');">
</div>
</form>
</td>
如果我刪除刪除按鈕,編輯代碼工作正常。但是,如果存在兩個按鈕,則編輯按鈕將失敗,並且該行中的項目將被刪除。我很難過。不僅編輯按鈕的動作值被忽略,而且執行刪除按鈕的動作值。任何幫助表示讚賞!
這裏是控制器編輯和刪除代碼:
/*********************** Edit Daily Shift Report ************************/
if (isset($_POST['action']) && $_POST['action'] === 'edit_daily_shift_report')
{
include '../includes/dbconnect-local.php';
try
{
$sql = 'SELECT * FROM daily_shift_report WHERE id = :id';
$s = $db->prepare($sql);
$s->bindValue(':id', $_POST['id']);
$s->execute();
}
catch (PDOException $e)
{
$error = 'Error deleting data.' . $e->getMessage();
include 'error.html.php';
exit();
}
// Assign page title value
$pageTitle = 'Edit Daily Shift Report';
// Store single row resut in $item associative array
$item = $s->fetch(PDO::FETCH_ASSOC);
// Display report content in form
include 'edit_daily_shift_report.html.php';
exit();
}
/********************* Delete from Daily Shift Report *******************/
if (isset($_POST['action']) && $_POST['action'] === 'delete_daily_shift_report')
{
include '../includes/dbconnect-local.php';
try
{
$sql = 'DELETE FROM daily_shift_report WHERE id = :id';
$s = $db->prepare($sql);
$s->bindValue(':id', $_POST['id']);
$s->execute();
}
catch (PDOException $e)
{
$error = 'Error deleting data.' . $e->getMessage();
include 'error.html.php';
exit();
}
echo '<span style="color:#ff0000;">Daily Shift Report DELETED successfully!</span>';
}
謝謝。
有一件事我忘了提及。當你有相同名稱的字段時,該值將被下一個具有相同名稱的字段覆蓋。一個例外是,如果您在名稱中使用[]。 Php認爲這是一個數組,並且會爲你創建該字段和數組 – Morten
Thanks @Morten!對不起,我遲遲沒有回覆。感謝您花時間看看這個。我在解決方案之前解決了這個問題,創建了兩個表單,並將它們分別放入自己的表單中。它似乎不是最好的解決方案,但它的工作。但是,您的解決方案更好,我已經在這裏和其他地方使用了它。使用
沒問題,只是很高興幫助:) @ JimB814 – Morten