羅德興老師的教學歷程檔案 - 105-1 資料庫管理系統 - (入門功 9) MySQL-PHP-TEXT-新增-查詢-刪除-更新範例
 

企業資訊與管理系
助理教授/日導
羅德興


歷程檔案 Portfolio

    (入門功 9) MySQL-PHP-TEXT-新增-查詢-刪除-更新範例

    (入門功 9) MySQL-PHP-TEXT-新增-查詢-刪除-更新範例

    (以下取材自  溫瑞烘教授  教學網頁  http://alliance.cust.edu.tw/portfolio/myPortfolio?path=410705&tag=105-1-資料庫程式設計)

    請先備好工具:  (1) 網站 Server + PHP + MySQL, 如 Appserv, (2) 編輯軟體, 如 Notepad ++, (3) 資料庫操作軟體,如 HeidiSQL.


    ***********
    -- 建立新資料夾  project9
    -- test9.sql 存至  project9/test9.sql
    DROP DATABASE IF EXISTS mydb; 
    CREATE DATABASE mydb DEFAULT CHARACTER SET utf8; 
    USE mydb;  
    CREATE TABLE stmd (
      depart_class   CHAR(6)     COMMENT  '班級代碼',
      student_no     CHAR(9)     COMMENT  '學號',
      student_name   VARCHAR(20) COMMENT  '姓名',
      address        VARCHAR(60) COMMENT  '地址',
      primary key(student_no)
    );

    ***********
    // project9/config.php

    // project9/style.css

    ***********
    // project9/all9.php 

    <?php
     // all9.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_modify_page($conn);
      }
      elseif ($command=="更新確認") {
        display_confirm_page($conn);
        display_first_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='depart_class' size=10/></td></tr>
              <tr><td class='alt1'>學號</td>
              <td><input type='text' name='student_no'  size=20 /></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) {
        $depart_class=$_POST["depart_class"];
        if ($depart_class=="") $depart_class="%"; 
        else $depart_class="%".$depart_class."%";
        $student_no=trim($_POST["student_no"]); 
        if ($student_no=="") $student_no="%"; 
        else $student_no="%".$student_no."%"; 
        $sql="select * from stmd where depart_class like '$depart_class' and  
              student_no like '$student_no' order by depart_class,student_no";
        $result=mysqli_query($conn,$sql);
        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=3>MySql與PHP結合-TEXT-新增-查詢-刪除-更新範例</td></tr>
              <tr class='alt1'><td>班級代碼</td><td>學號</td><td>選擇</td></tr>";
        $cnt=0;
        while ($myrow=mysqli_fetch_array($result)) { 
          $depart_class=$myrow["depart_class"];   
          $student_no=$myrow["student_no"];     
          $bgcolor=$cnt % 2+ 2;
          echo "<tr class='alt$bgcolor'><td>$depart_class</td><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='更新'>
              <input class='cmd' type='submit' name='command' value='刪除'
                onclick=\"return confirm('確定要刪除嗎');\" >
              <input class='cmd' type='submit' name='command' value='返回'>
              <br> 共 $cnt 筆資料
              </form></center></body></html>"; 
      }
     
      function display_insert_page($conn) {
        $depart_class=trim($_POST["depart_class"]);
        $student_no=trim($_POST["student_no"]);
        if ($student_no=="") {
          display_first_page($conn); exit();
        }
        $sql="insert into stmd values('$depart_class','$student_no','','')";
        mysqli_query($conn,$sql);                    
      }
     
      function display_modify_page($conn) { 
        $student_no=$_POST["student_no"]; 
        if ($student_no=="") {
          display_first_page($conn); exit();
        }  
        $sql="select * from stmd where student_no='$student_no' ";
        $result=mysqli_query($conn,$sql);
        $myrow=mysqli_fetch_array($result); 
        $depart_class=$myrow["depart_class"];   
        $student_no=$myrow["student_no"];    
        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=6>MySql與PHP結合-TEXT-新增-查詢-更新-刪除範例</td></tr>
              <table> <form method='post' action=''>
              <tr class='alt0'><td colspan=2>MySql與PHP結合-TEXT-RADIO-新增-查詢-範例</td></tr>
              <tr><td class='alt1'>班級代碼</td>
              <td><input type='text' name='depart_class' value='$depart_class' /></td></tr>
              <tr><td class='alt1'>學號</td>
              <td><input type='text' name='student_no' value='$student_no' readonly /></td></tr>
              </table>
              <input class='cmd1' type='submit' name='command' value='更新確認'
                onclick=\"return confirm('確定要更新嗎');\" >
              <input class='cmd' type='submit' name='command' value='返回'>
              </form></center></body></html>";
      }
     
      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);                    
      }
     
      function display_confirm_page($conn) {
        $student_no=$_POST["student_no"];
        $depart_class=$_POST["depart_class"];
        $sql="update stmd set depart_class='$depart_class'
              where student_no='$student_no'";
        mysqli_query($conn,$sql);                    
      }
     
    ?>
     
    ***********
    作業
    針對前述資料表(四個欄位)寫完整的程式



    作業引導範例如下:

    <?php
     // all9.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_modify_page($conn);
      }
      elseif ($command=="更新確認") {
        display_confirm_page($conn);
        display_first_page($conn);
      }
      elseif ($command=="刪除") {
        display_delete_page($conn);
        display_first_page($conn);
      }
      mysqli_close($conn);
     
      function display_first_page($conn) { // 第一個頁面
      // 修改 echo 內
        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='depart_class' size=5/></td></tr>
              <tr><td class='alt1'>學號</td>
              <td><input type='text' name='student_no'  size=20 /></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) {
        $depart_class=$_POST["depart_class"];
        if ($depart_class=="") $depart_class="%"; 
        else $depart_class="%".$depart_class."%";
        $student_no=trim($_POST["student_no"]); 
        if ($student_no=="") $student_no="%"; 
        else $student_no="%".$student_no."%"; 
    // 修改這兒
        $sql="select * from stmd where depart_class like '$depart_class' and  
              student_no like '$student_no' order by depart_class,student_no";
        $result=mysqli_query($conn,$sql);
        // 修改 echo 內
    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=3>MySql與PHP結合-TEXT-新增-查詢-刪除-更新範例</td></tr>
              <tr class='alt1'><td>班級代碼</td><td>學號</td><td>選擇</td></tr>";
        $cnt=0;
        while ($myrow=mysqli_fetch_array($result)) { 
          $depart_class=$myrow["depart_class"];   
          $student_no=$myrow["student_no"];     
     // 修改這兒
          $bgcolor=$cnt % 2+ 2;
          // 修改這兒
     echo "<tr class='alt$bgcolor'><td>$depart_class</td><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='更新'>
              <input class='cmd' type='submit' name='command' value='刪除'
                onclick=\"return confirm('確定要刪除嗎');\" >
              <input class='cmd' type='submit' name='command' value='返回'>
              <br> 共 $cnt 筆資料
              </form></center></body></html>"; 
      }
     
      function display_insert_page($conn) {
        $depart_class=trim($_POST["depart_class"]);
        $student_no=trim($_POST["student_no"]);
    // 修改這兒
        if ($student_no=="") {
          display_first_page($conn); exit();
        }
    // 修改這兒
        $sql="insert into stmd values('$depart_class','$student_no','','')";
        mysqli_query($conn,$sql);                    
      }
     
      function display_modify_page($conn) { 
        $student_no=$_POST["student_no"]; 
        if ($student_no=="") {
          display_first_page($conn); exit();
        }  
        $sql="select * from stmd where student_no='$student_no' ";
        $result=mysqli_query($conn,$sql);
        $myrow=mysqli_fetch_array($result); 
        $depart_class=$myrow["depart_class"];   
    $student_no=$myrow["student_no"];    
        // 修改這兒
    // 修改 echo 內
    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=6>MySql與PHP結合-TEXT-新增-查詢-更新-刪除範例</td></tr>
              <table> <form method='post' action=''>
              <tr class='alt0'><td colspan=2>MySql與PHP結合-TEXT-RADIO-新增-查詢-範例</td></tr>
              <tr><td class='alt1'>班級代碼</td>
              <td><input type='text' name='depart_class' value='$depart_class' /></td></tr>
              <tr><td class='alt1'>學號</td>
              <td><input type='text' name='student_no' value='$student_no' readonly /></td></tr>
     </table>
              <input class='cmd1' type='submit' name='command' value='更新確認'
                onclick=\"return confirm('確定要更新嗎');\" >
              <input class='cmd' type='submit' name='command' value='返回'>
              </form></center></body></html>";
      }
     
      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);                    
      }
     
      function display_confirm_page($conn) {
        $student_no=$_POST["student_no"];
        $depart_class=$_POST["depart_class"];
    // 修改這兒
    // 修改 sql 
        $sql="update stmd set depart_class='$depart_class'
              where student_no='$student_no'";
        mysqli_query($conn,$sql);                    
      }
     
    ?>







     





    全部共 0則留言
    登入帳號密碼代表遵守學術網路規範


    文章分類 Labels


    最新文章 Top10

    中華科技大學數位化學習歷程 - 意見反應