第13天 - (配第11天) 修改MySQL资料表内容,配合下拉式选单

今天内容要搭配【第11天的文章】中的【staff_edit.php (里面含有 INPRUT做修改的那个)】
https://ithelp.ithome.com.tw/articles/10262436

因为如果某资料表有配合外部键,那其外部键值的修改,就很适合配合下拉式选单
(因为只能选外部键已经有的内容)。

下拉式选单的基本语法,也可参考下列网址
https://www.fooish.com/html/select-option-optgroup-tag.html

这次的重点的是 资料库 UPDATE 的语法、下拉式选单要如何预设成会员原本的等级。
整体程序码长这样

<?php
/*储存修改会员资料*/
if(isset($_POST['staff_edit_btn']))
{
	
	$st_name = $_POST['staff_edit']; //下面 input type="text"标签 的name值
	$st_role = $_POST['S_ROLE']; //下面 下拉式选单select标签 的name值
	$st_id =$_POST['ST_ID'];

	$query2="UPDATE staff
			 SET staff_name ='$st_name',
			     staff_role ='$st_role'
			 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');
	}
}
?>

<body>
<div class="container">
<?php
	$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>
				
			

<?php
		//下面 $value 是要配合 下拉式选单,预设显示(echo "selected";) 原本该会员的等级
		//因为是搜寻表staff 所以外部键的的栏位是 staff_role (而不是STAFF_ROLE)
		$value =  $row['staff_role']; 
		}
	}
	else
	{
		echo "尚未建立任何会员等级";
	}
?>
	
<!--下拉式选单------------------------------>
	<?php
        //搜寻等级列表(add_role) 中的所有会员等级
		$query9 = "SELECT * FROM add_role";
		$result9 = mysqli_query($con, $query9);
	?>

	<label>修改会员等级 : </label>
	<select  name="S_ROLE" >

        <?php while($row9 = mysqli_fetch_array($result9)):;?>

        	<!--下面 $row9['(资料表(add_role) 的栏位(STAFF_ROLE) )']; ---------->
            <option value="<?php echo $row9['STAFF_ROLE'];?>"  
            	<?PHP 
            		if($value == $row9['STAFF_ROLE']){echo "selected";} 
            	?> 
            >
            	<?php echo $row9['STAFF_ROLE'];?>
            </option>
        <?php endwhile;?>

	</select>

	<button name="staff_edit_btn">储存修改</button>

</form>
</div>
</body>

今天就先这样,下次见。


<<:  系统和应用软件提供安全保证- 通用标准(Common Criteria)

>>:  AI ninja project [day 13] 回归

[13th][Day2] 第一个 Container

Docker 可以提供安全的沙盒环境来做测试, 建构多用户的 PaaS (platform as a...

[DAY02] 建立 Azure Machine Learning Workspace

今天我们要开始建 Azure Machine Learning(下称AML)的 workspace ...

回顾过去四年与未来展望 (?)

终於来到第三十天了,感谢关注这篇系列文的读者们愿意看我废话 30 天 XD 进入正题 如果是近两年才...

Sass @mixin实现RWD DAY36

今天我们要来介绍 Sass Mixin 与 content的搭配 来解决RWD Scss: @mix...

爬虫怎麽爬 从零开始的爬虫自学 DAY1 爬虫怎麽爬

我是谁 我是一个资讯相关科系的大学生,也是资讯方面的小小新手,这次不仅因为想要挑战自我,更因为学校有...