今天來做從網頁修改MySQL資料表內容(修改會員的名稱)
首先要做出一個修改按鈕(雖然說是按鈕,但我用帶有超連結功能的【a標籤】來實行)如下
<a href="staff_edit.php?ST_EDIT=<?php echo $row['staff_id'];?>"
class="badge badge-info">
修改
</a>
而上面的程式碼,可以參考第09天的文章,放在相對的位置(我放在刪除按鈕的旁邊)
https://ithelp.ithome.com.tw/articles/10261775
再來就是 新建立一個.PHP檔 (我取名staff_edit.php),注意【a標籤】的內容有staff_edit.php
而 問號 後面的 ST_EDIT= 有一個地方會用到,如下:
<?php
/*儲存修改會員名稱*/
if(isset($_POST['staff_edit_btn']))
{
$st_name = $_POST['staff_edit'];
$st_id =$_POST['ST_ID'];
$query2="UPDATE staff
SET staff_name ='$st_name'
WHERE staff_id ='$st_id' ";
$query_run2 = mysqli_query($con,$query2);
if($query_run2)
{
//修改成功則回到上個頁面(或其他指定頁面)
header('Location: Hello.php');
}
else
{
//修改失敗則停留在此頁面
header('Location: staff_edit.php');
}
}
?>
<body>
<div class="container">
<?php
//這裡有用到【a標籤】的內
//此頁面內容是要抓【a標籤】所帶來的<?php echo $row['staff_id'];?>(會員id)
//因為會員id不會重複,所以才知道要抓(GET)哪個來進行修改會員名稱
$ST_ID = $_GET['ST_EDIT'];
$query = "SELECT * FROM staff WHERE staff_id='$ST_ID' ";
$query_run = mysqli_query($con,$query);
?>
<?php
if(mysqli_num_rows($query_run) > 0)
{
foreach($query_run as $row)
{
?>
<form method="POST">
<div class="form-group">
<!-- 注意下面的 input type="hidden" ,
上面的PHP 要依據這來修改會員名稱 -->
<input type="hidden" name="ST_ID" value="<?php echo $row['staff_id'];?>">
<label>修改會員名稱:</label>
<input type="text" name="staff_edit"
value="<?php echo $row['staff_name'];?>">
</div>
<button name="staff_edit_btn">儲存修改</button>
</form>
<?php
}
}
else
{
echo "尚未建立任何會員等級";
}
?>
</div>
</body>
操作結果
做這個實作要注意的是記得要放 input type="hidden"的標籤(裡面的值要放具有唯一性的,如 會員ID << 雖然是修改會員名稱,但還是要依靠ID才能實行),這樣程式碼才知道要依據哪個做修改。
今天就先這樣,下次見。