5. シラバスデータベースを使ってみよう




図1 PHPがWebアプリケーションとして動作する仕組み


作成したデータベースをweb上にデータを取り出し、表示してみます。

PHPを使ってMySQLで作成したsyllabusテーブルを、Web上に表示します。

<?php


  require_once("db2.php");
  ↑最初にdb2.phpファイルを実行

  $con = mysql_connect($DBSERVER,$DBUSER,$DBPASSWORD);
  ↑MySQLに接続
  $selectdb = mysql_select_db($DBNAME,$con);
  ↑データベースを選択 

 $sql = "select * from syllabus";
  ↑syllabusテーブルからすべてのデータを取り出す
    $rst = mysql_query($sql,$con);
  ↑SQL文を発行

 $body = "<TABLE border='1' cellpadding='2' cellspacing='0'>
  ↑テーブルの設定(枠の太さ・枠と文字の間隔・テーブル同士の間隔)
          <TR>
           ↑テーブルの行を定義

           <TH bgcolor='#00CCCC'>科目名</TH>
           <TH bgcolor='#00CCCC'>担当教員名</TH>
           <TH bgcolor='#00CCCC'>単位数</TH>
           <TH bgcolor='#00CCCC'>必選区分</TH>
           <TH bgcolor='#00CCCC'>授業形態</TH>
           <TH bgcolor='#00CCCC'>開講時期</TH>
           <TH bgcolor='#00CCCC'>関連資格の必選</TH>
           <TH bgcolor='#00CCCC'>授業の概要および目標</TH>
           <TH bgcolor='#00CCCC'>授業計画</TH>
           <TH bgcolor='#00CCCC'>受講上の注意評価方法</TH>
           <TH bgcolor='#00CCCC'>テキスト参考書</TH>
           <TH bgcolor='#00CCCC'>関連科目</TH>
           <TH bgcolor='#00CCCC'>備考</TH>
           ↑セルの背景色を定義

      <"TR>"\n";

  while($col = mysql_fetch_array($rst,MYSQL_BOTH)) {
  ↑Mysqlから1件ずつデータを取得して画面に表示
  $body .= "<TR>"\n";
 
  $body .= "<TD>" . $col["subject"]  "</TD>\n;
  $body .= "<TD>" . $col["name"]  "</TD>\n;
  $body .= "<TD>" . $col["unit"]  "</TD>\n;
  $body .= "<TD>" . $col["sort"]  "</TD>\n;
  $body .= "<TD>" . $col["shape"]  "</TD>\n;
  $body .= "<TD>" . $col["time"]  "</TD>\n;
  $body .= "<TD>" . $col["licence"]  "</TD>\n;
  $body .= "<TD>" . $col["plan"]  "</TD>\n;
  $body .= "<TD>" . $col["value"]  "</TD>\n;
  $body .= "<TD>" . $col["reference"]  "</TD>\n;
  $body .= "<TD>" . $col["connesubject"]  "</TD>\n;
  $body .= "<TD>" . $col["note"]  "</TD>\n;
  $body .= "</TR>\n";
 }
 $body .= "</TABLE>\n";

  mysql_free_result($rst);
  ↑結果セットを破棄する
  $con = mysql_close($con);
  ↑Mysqlとの接続を閉じる

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
↑「HTML 4.01 Transitional」のDOCTYPE宣言。文書に一致したバージョンを指定。
非推奨要素や属性は使用できますがフレームを使用することができません
<HTML> <HEAD> <META http-equiv="Content-Type"content="text/html; charset=Shift_JIS"> ↑文字化け対策 <META http-equiv="Content-Style-Type" content="text/css;"> ↑ページの記述言語 </HEAD> <BODY> <?= $body ?> </BODY> </HTML>

実行例





ここでは、実際に作成したテーブルから必修科目のみ取り出してみました。

  • Mysqlで作成したテーブル名『syllabus』のフィールド名『必選区分』(sort)から「必修」のデータをselect
     文を使用してすべてのデータを取り出す。


    テーブルからデータを取り出すPHPの説明!!
    <?php
    
     require_once("db2.php");
      ↑最初にdb2.phpファイルを実行
    
     $con = mysql_connect($DBSERVER,$DBUSER,$DBPASSWORD);
      ↑MySQLに接続
       $selectdb = mysql_select_db($DBNAME,$con);
      ↑データベースを選択
    
     $sql = "select * from syllabus where sort ='必修'
      ↑syllabusテーブルから必選区分が'必修'のデータのみ取り出して表示
       $rst = mysql_query($sql,$con);
      ↑SQL文を発行
    
     $body = "<TABLE border='1' cellpadding='2' cellspacing='0'>
      ↑テーブルの設定(枠の太さ・枠と文字の間隔・テーブル同士の間隔)
              <TR>
               ↑テーブルの行を定義
    
               <TH bgcolor='#00CCCC'>科目名</TH>
               <TH bgcolor='#00CCCC'>担当教員名</TH>
               <TH bgcolor='#00CCCC'>単位数</TH>
               <TH bgcolor='#00CCCC'>必選区分</TH>
               <TH bgcolor='#00CCCC'>授業形態</TH>
               <TH bgcolor='#00CCCC'>開講時期</TH>
               <TH bgcolor='#00CCCC'>関連資格の必選</TH>
               <TH bgcolor='#00CCCC'>授業の概要および目標</TH>
               <TH bgcolor='#00CCCC'>授業計画</TH>
               <TH bgcolor='#00CCCC'>受講上の注意評価方法</TH>
               <TH bgcolor='#00CCCC'>テキスト参考書</TH>
               <TH bgcolor='#00CCCC'>関連科目</TH>
               <TH bgcolor='#00CCCC'>備考</TH>
               ↑セルの背景色を定義
    
          <"TR>"\n";
    
      while($col = mysql_fetch_array($rst,MYSQL_BOTH)) {
      ↑Mysqlから1件ずつデータを取得して画面に表示
      $body .= "<TR>"\n";
     
      $body .= "<TD>" . $col["subject"]  "</TD>\n;
      $body .= "<TD>" . $col["name"]  "</TD>\n;
      $body .= "<TD>" . $col["unit"]  "</TD>\n;
      $body .= "<TD>" . $col["sort"]  "</TD>\n;
      $body .= "<TD>" . $col["shape"]  "</TD>\n;
      $body .= "<TD>" . $col["time"]  "</TD>\n;
      $body .= "<TD>" . $col["licence"]  "</TD>\n;
      $body .= "<TD>" . $col["plan"]  "</TD>\n;
      $body .= "<TD>" . $col["value"]  "</TD>\n;
      $body .= "<TD>" . $col["reference"]  "</TD>\n;
      $body .= "<TD>" . $col["connesubject"]  "</TD>\n;
      $body .= "<TD>" . $col["note"]  "</TD>\n;
      $body .= "</TR>\n";
     }
     $body .= "</TABLE>\n";
    
      mysql_free_result($rst);
      ↑結果セットを破棄する
      $con = mysql_close($con);
      ↑Mysqlとの接続を閉じる
    
    ?>
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    ↑「HTML 4.01 Transitional」のDOCTYPE宣言。文書に一致したバージョンを指定。
    非推奨要素や属性は使用できますがフレームを使用することができません
    <HTML> <HEAD> <META http-equiv="Content-Type"content="text/html; charset=Shift_JIS"> ↑文字化け対策 <META http-equiv="Content-Style-Type" content="text/css;"> ↑ページの記述言語 </HEAD> <BODY> <?= $body ?> </BODY> </HTML>
    実行例

    トップページへ