溫瑞烘老師的教學歷程檔案(Teaching ePortfolio) - 103-2-資管二甲乙資料庫管理系統 - 第13週PHP-MySQL-Checkbox
 

資訊管理系
副教授
温瑞烘


歷程檔案 Portfolio


關於我 About Me

第13週PHP-MySQL-Checkbox

新增一個資料表
CREATE TABLE sports(
  oid         INT(5) AUTO_INCREMENT COMMENT '識別碼',
  sports_list VARCHAR(256) NOT NULL COMMENT '運動 1,2,3,...',
  name        VARCHAR(20) NOT NULL  COMMENT '姓名',
  PRIMARY KEY(oid)
) COMMENT '運動表';


<?php
  include "config.php";
 
  $all_sports_list=array("","藍球","排球","羽球","乒乓球","網球","棒球"); // 1 2 3 4 5 6

  if (isset($_POST["command"])) $command=$_POST["command"];
  else $command="";
 
  if ($command=="" || $command=="返回") {
    display_first_page($conn);
  }
  elseif ($command=="查詢") {
    display_search_page($conn);
  }
  elseif ($command=="新增") {
    display_insert_page($conn);
    display_first_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) {
    global $all_sports_list;
    echo "<html><head><title></title>
          <link rel='stylesheet' type='text/css' href='style.css'>
          </head><body><center>
          <table> <form method='post' action=''>
          <tr class='alt0'><td colspan=4>Checkbox 範例</td></tr>
          <tr><td class='alt1'>運動</td><td>";
    for ($i=1; $i<count($all_sports_list); $i++) {
      $spts=$all_sports_list[$i];
      echo "<input type='checkbox' name='my_sports_list[]' value='$i'>$spts";
    }
    echo "</td></tr>
          <tr><td class='alt1'>姓名</td>
          <td><input type='text' id='name' name='name' /></td></tr>
          </table>
          <input class='cmd' type='submit' name='command' value='查詢' >
          <input class='cmd' type='submit' name='command' value='新增' >
          <input class='cmd' type='reset' name='command' value='清除' >
          </form></center></body></html>";
  }

  function display_insert_page($conn) {
    global $all_sports_list;
    $my_sports_list=$_POST["my_sports_list"];
    $my_sports_list=@implode(",",$my_sports_list);
    $name=trim($_POST["name"]);
    $sql="insert into sports values(null,'$my_sports_list','$name')";
    $retcode=mysqli_query($conn,$sql);
    if ($retcode===true) {
      echo "<script> alert('插入一筆記錄成功'); </script>";
    } else {
      echo "<script> alert('插入一筆記錄失敗'); </script>"; 
    }        
  }

  function display_search_page($conn) {
    global $all_sports_list;
    $today=date("Y-m-d");
    $name=trim($_POST["name"]);
    if ($name=="") $name="%";
    else $name="%".$name."%";
    $sql="select * from sports where name like '$name' order by oid";
    $result=mysqli_query($conn,$sql);
    echo "<html><head><title></title>
          <link rel='stylesheet' type='text/css' href='style.css'>
          </head><body><center><table>
          <form method='post' action=''>
          <tr class='alt3'><td colspan=4>[sports.php]Checkbox 範例 [$today]</td></tr>
          <tr class='alt1'><td>序號</td><td>運動</td><td>姓名</td>
          <td>選擇</td></tr>";
    $cnt=0;
    while ($myrow=mysqli_fetch_array($result)) {
      $oid=$myrow["oid"];
      $sports_list=$myrow["sports_list"];
      $my_sports_list=explode(",",$sports_list);
      $name=$myrow["name"];
      $cnt++;
      $bgc=($cnt % 2) + 2;
      echo "<tr class='alt$bgc'><td>$cnt</td><td>";
      foreach ($my_sports_list as $mysports) echo $all_sports_list[$mysports]." ";
      echo "</td>
            <td>$name</td><td>
            <input type='radio' name='oid' value='$oid'></td></tr>";
    }
    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='返回'>
          </center></body></html>";
  }

  function display_modify_page($conn) { // 更新頁面
    global $all_sports_list;
    $oid=$_POST["oid"];
    if ($oid=="") return;
    $sql="select * from sports where oid=$oid ";
    $result=mysqli_query($conn,$sql);
    $myrow=mysqli_fetch_array($result);
    $sports_list=$myrow["sports_list"];
    $my_sports_list=explode(",",$sports_list);
    $name=$myrow["name"];
    echo "<html><head><title>Checkbox 範例</title>
          <link rel='stylesheet' type='text/css' href='style.css'>
          </head><body><center>
          <table> <form method='post' action=''>
          <tr class='alt0'><td colspan=4>Checkbox 範例</td></tr>
          <tr><td class='alt1'>運動</td><td>";
    for ($i=1; $i<count($all_sports_list); $i++) {
      $spts=$all_sports_list[$i];
      if (in_array($i,$my_sports_list))
        echo "<input type='checkbox' name='my_sports_list[]' checked value='$i'>$spts";
      else
        echo "<input type='checkbox' name='my_sports_list[]' value='$i'>$spts";
    }
    echo "</td></tr>
          <tr><td class='alt1'>姓名</td>
          <td><input type='text' id='name' name='name'
                value='$name' /></td></tr>
          </table>
          <input class='cmd' type='submit' name='command' value='確認' >
          <input class='cmd' type='submit' name='command' value='返回' >
          <input type='hidden' name='oid' value='$oid' >
          </form></center></body></html>";
  }

  function display_confirm_page($conn) {
    $oid=trim($_POST["oid"]);
    $my_sports_list=$_POST["my_sports_list"];
    $my_sports_list=implode(",",$my_sports_list);
    $name=trim($_POST["name"]);
    $sql="update sports set sports_list='$my_sports_list',name='$name' where oid=$oid";
    $retcode=mysqli_query($conn,$sql);
    if ($retcode===true) {
      echo "<script> alert('更新一筆記錄成功'); </script>";
    } else {
      echo "<script> alert('更新一筆記錄失敗'); </script>"; 
    }        
  }

  function display_delete_page($conn) {
    $oid=trim($_POST["oid"]);
    $sql="delete from sports where oid=$oid ";
    $retcode=mysqli_query($conn,$sql);
    if ($retcode===true) {
      echo "<script> alert('刪除一筆記錄成功'); </script>";
    } else {
      echo "<script> alert('刪除一筆記錄失敗'); </script>"; 
    }        
  }

?>


作業
在 stmd1 中增加一欄 sports 成為 stmd2
(depart_class student_no student_name
 address birthday gender sports)
性別 gender 以 Radio
班級代碼 depart_class以 Select (四技資管二甲、
  四技資管二乙、四技資管二丙)
運動 sports以Checkbox完成PHP程式
 



 

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


文章分類 Labels

 


最新文章 Top10

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