iT邦幫忙

2021 iThome 鐵人賽

DAY 12
0
自我挑戰組

HTML、 PHP CRUD 自我學習系列 第 12

第12天 - 用 PHP Session 與 Bootstrap 做警告(提示)

  • 分享至 

  • xImage
  •  

今天用來使用 Session 做警告(提示),它可以用來讓使用者知道他的動作使否有成功(例如修改成功時,跳出"修改成功"等字樣),也可以用來DEBUG(看警告是在哪個程序上出錯)。
另外今天的實作要跟第 9、10、11 天的文章做一併使用,但由於篇幅限制,我拿比較麻煩的 第11天(修改) 來做示範。
https://ithelp.ithome.com.tw/articles/10262436

首先請在你程式碼最上面加上下列內容,這樣 Session 才會有作用。
每一個有用到 【$_SESSION】 的都要加!!

<?php
    session_start();
?>

再來是 Bootstrap警報(Alerts) 的使用,我選的是能關閉的。把它寫在你想出現的位置(根據你的HTML),
然後用 Session 做觸發。

<!--SESSION 是黃色提示的東東----------------------------------->
<?php
    if (isset($_SESSION['status']) && $_SESSION != '')
    {
?>

    <div class="alert alert-warning alert-dismissible fade show" role="alert">
    
    <!--strong 標籤是固定顯示的內容- 後面的 echo $_SESSION 才是會做變化的部分----------->
    <!--然後注意一下自己Session取的名稱 $_SESSION['你取的名稱'];----------->
        <strong>*******</strong> <?php echo $_SESSION['status']; ?>
        
        <button type="button" class="close" data-dismiss="alert" aria-label="Close">
        <span aria-hidden="true">×</span>
        </button>
    </div>

<?php
        unset($_SESSION['status']); //跳出完警告,就立刻清除 Session
    }
?>

昨天文章中 staff_edit.php 有段程式碼跟"修改 成功或失敗"有關的,我把它加入Session 去觸發警告框。
改完後如下:

<?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)
	{
		//修改成功則回到上個頁面(或其他指定頁面)
		$_SESSION['status'] =" 會員名稱改成功!!!!!!!!!!";
		header('Location: Hello.php');
	}
	else
	{
		//修改失敗則停留在此頁面
		$_SESSION['status'] =" 會員名稱修改失敗~~";
		header('Location: staff_edit.php');
	}
}
?>

成果如下
https://ithelp.ithome.com.tw/upload/images/20210912/20141355DCFWlP5Z3G.png

今天就先這樣,下次見。


上一篇
第11天 - PHP修改MySQL資料表內容
下一篇
第13天 - (配第11天) 修改MySQL資料表內容,配合下拉式選單
系列文
HTML、 PHP CRUD 自我學習30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言