羅德興老師的教學歷程檔案 - 107-1 資料庫系統實作 - (期末作業一) 以網站展現本學期的作業 |
|
|
(期末作業一) 以網站展現本學期的作業(期末作業一) 以網站展現本學期的作業 (以下取材自 溫瑞烘教授 教學網頁 http://alliance.cust.edu.tw/portfolio/myPortfolio?path=410705&tag=105-1-資料庫程式設計) 請先備好工具: (1) 網站 Server + PHP + MySQL, 如 Appserv, (2) 編輯軟體, 如 Notepad ++, (3) 資料庫操作軟體,如 HeidiSQL. 網站架構 C:/AppServ/www/index.html 為網站入口、 三欄式 Frame:頂端 top.html、 左側選單 left.html 、中間顯示區 middle.html <!-- index.html 此為註解 --> <!-- This is by 學號 XXXXX L.D.S on 2016/11/23 --> <FRAMESET rows='20%,*' bordercolor='#ff00ff'> <FRAME name='top' SRC='top.html' > <FRAMESET cols='20%,80%' bordercolor='#ff00ff'> <FRAME name='left' SRC='left.html'> <FRAME name='middle' SRC='middle.html'> </FRAMESET> </FRAMESET> <!-- top.html --> <h1>班級 XXX 學號 YYY 姓名 ZZZZ 的期末作業 </h1> <!-- middle.html --> <h1>班級 學號 姓名 </h1> <!-- left.html --> <a href='/db1/db1-1.php' target='middle'> 期末作業練習 1</a><br> <a href='/db1/all9.php' target='middle'> 期末作業練習 2 TEXT-新增-查詢-刪除-更新</a><br> ***** // 執行 http://localhost/index.html 建立C:/AppServ/www/db1放置所有文件, 包括 db1.sql, config.php, style.css, db1-1.php ***** db1.sql -- db1.sql DROP DATABASE IF EXISTS db1; CREATE DATABASE db1 DEFAULT CHARACTER SET utf8; USE db1; CREATE TABLE stmd ( student_no CHAR(9) COMMENT '學號', primary key(student_no) ); ***** config.php <?php // config.php $host = "127.0.0.1"; $user = "root"; $pwd = "password"; $dbname="db1"; $conn=mysqli_connect($host,$user,$pwd) or die("無法連接主機"); mysqli_query($conn,'SET NAMES utf8'); mysqli_select_db($conn,$dbname) or die("無法連接資料庫"); ?> ***** style.css <style type='text/css'> body { width:100%; margin:0 padding:0; font-family:標楷體; } table { border-collapse:collapse; border:1px solid black; empty-cells:show; width:100%; } th { background-color:ccffff; border: 1px solid; font-family:標楷體;} td { border: 1px solid; text-align : center; font-family:標楷體; } .alt0 { background-color:#99ffff; font-weight:bold; font-family:標楷體; } .alt1 { background-color:#ccccff; font-family:標楷體; } .alt2 { background-color:#ccffff; font-family:標楷體; } .alt3 { background-color:#fff8c6; font-family:標楷體; } a: { background:ccccff; border:1px solid ccc; color:000; padding:.3em .5em; margin-top:1px; margin-bottom:1px; text-align:center; text-decoration:none; display: inline-block; font-family:標楷體; } a:link {background-color:ff88ee } a:visited {background-color:FFFF85;} a:hover {background-color:FF704D; } a:active {background-color:FF704D; } p {background-color: #81F781; display:inline;font-family:標楷體; font-weight:bold;} .cmd {font-family:標楷體; font-size:18px; background-color:ccccff; width:4em; } .cmd1 {font-family:標楷體; font-size:18px; background-color:ccccff; width:10em; } .cmd2 {font-family:標楷體; font-size:18px; background-color:ccccff; width:5em; } </style> ***** db1-1.php <?php // db1-1.php include "config.php"; // 連線組態 if (isset($_POST["command"])) $command=$_POST["command"]; else $command=""; if ($command=="" || $command=="返回") { display_first_page($conn); } elseif ($command=="新增") { display_insert_page($conn); display_first_page($conn); } elseif ($command=="查詢") { display_search_page($conn); } elseif ($command=="刪除") { display_delete_page($conn); display_first_page($conn); } mysqli_close($conn); function display_first_page($conn) { // 第一個頁面 echo "<html><head><title>MySql與PHP結合-TEXT-新增-查詢-範例</title> <link rel='stylesheet' type='text/css' href='style.css'> </head><body><center> <table> <form method='post' action=''> <tr class='alt0'><td colspan=2>MySql與PHP結合-TEXT-新增-查詢-範例</td></tr> <tr><td class='alt1'>學號</td> <td><input type='text' name='student_no' /></td></tr></table> <input class='cmd' type='submit' name='command' value='查詢'> <input class='cmd' type='submit' name='command' value='新增'> </form></center></body></html>"; } function display_search_page($conn) { $student_no=trim($_POST["student_no"]); // 取得輸入的學號,移除前後空白 if ($student_no=="") $student_no="%"; // 查詢全部 else $student_no="%".$student_no."%"; // 查詢匹配的學號 $sql="select * from stmd where student_no like '$student_no' order by student_no"; $result=mysqli_query($conn,$sql); echo "<html><head> <link rel='stylesheet' type='text/css' href='style.css'> </head><body><center> <table><form method='post' action=''> <tr class='alt0'><td colspan=2>MySql與PHP結合-新增-查詢-刪除-範例</td></tr> <tr class='alt1'><td>學號</td><td>選擇</td></tr>"; $cnt=0; while ($myrow=mysqli_fetch_array($result)) { $student_no=$myrow["student_no"]; $bgcolor=$cnt % 2+ 2; echo "<tr class='alt$bgcolor'><td>$student_no</td> <td><input type='radio' name='student_no' value='$student_no'></td></tr>"; $cnt++; } echo "</table> <input class='cmd' type='submit' name='command' value='刪除' onclick=\"return confirm('確定要刪除嗎');\" > <input class='cmd' type='submit' name='command' value='返回'> <br> 共 $cnt 筆資料 </center></form></body></html>"; } function display_insert_page($conn) { $student_no=$_POST["student_no"]; if ($student_no=="") { display_first_page($conn); exit(); } $sql="insert into stmd values('$student_no')"; mysqli_query($conn,$sql); } function display_delete_page($conn) { $student_no=$_POST["student_no"]; if ($student_no=="") { display_first_page($conn); exit(); } $sql="delete from stmd where student_no='$student_no'"; mysqli_query($conn,$sql); } ?> 完成後 ...... Ex. 1 完成後以FileZilla上傳至ccs.cust.edu.tw/www/db1之下 或 雲端硬碟 關機、重開機 Ex. 2 下載index.html top.html left.html middle.html至 C:/AppServ/www 下載 db1資料夾至C:/Appserv/www Ex. 3 複製db1 資料夾 貼上 更名 db2 以下列結構撰寫 db2-1.php 並更改 left.html //db2.sql DROP DATABASE IF EXISTS db2; CREATE DATABASE db1 DEFAULT CHARACTER SET utf8; USE db2; CREATE TABLE stmd ( student_no CHAR(9) COMMENT '學號', student_name VARCHAR(20) COMMENT '姓名', primary key(student_no) ); Ex. 4 複製 db2 資料夾 貼上 更名 db3 以下列結構撰寫 db3-1.php 並更改 left.html //db3.sql DROP DATABASE IF EXISTS db3 CREATE DATABASE db3 DEFAULT CHARACTER SET utf8; USE db3; CREATE TABLE stmd ( student_no CHAR(9) comment '學號', student_name VARCHAR(20) comment '姓名', address VARCHAR(100) comment '地址', PRIMARY KEY(student_no) );
|
|
中華科技大學數位化學習歷程 - 意見反應 |