6章のクイズ ================================================================================ 6章のクイズを、Smartyを使って再構築する。 1. コーステーブルのすべてのデータのリストを表示する PHPプログラム。 2. スケジュールテーブルで、指定したスタッフの スケジュールだけを表示するPHPプログラム。 (オプション) スタッフの指定は、$_GET['code']で受け取るようにする。 3. スタッフの名前が選択リストとして表示されるようにする。 (ヒント) 選択リストのタグ ■1. □smartyquiz1.php --- "; print mysql_error($link); exit(); } $rows = mysql_num_rows($result); if ($rows < 1) { print "データが存在しませんでした。"; exit(); } ?>
コースコード コース名 価格
--- ■2. □smartyquiz2.php --- getMessage() . "
"; echo $cn->getDebugInfo() ."
"; exit(); } // パラメーターを取得 if (!isset($_GET['staff'])) { print "パラメーターstaffを指定してください。"; exit(); } $staff_code = $_GET['staff']; // SQL文を実行 $sql = "SELECT code, course, staff, start_date, end_date FROM schedule WHERE staff = $staff_code "; $ret = $cn->query($sql); if( DB::isError($ret) ){ echo $ret->getMessage() . "
"; echo $ret->getDebugInfo() . "
"; exit(); } $rows = $ret->numRows(); if ($rows < 1) { print "データが存在しませんでした。"; exit(); } ?> fetchRow(DB_FETCHMODE_ASSOC)) { ?>
コード コースコード コース名 スタッフコード スタッフ名 開始日 終了日
free(); $cn->disconnect(); ?> --- ■2a.  ※テーブルを結合 ※preparedステートメント使用 □smartyquiz2a.php --- getMessage() . "
"; echo $cn->getDebugInfo() ."
"; exit(); } // パラメーターを取得 if (!isset($_GET['staff'])) { print "パラメーターstaffを指定してください。"; exit(); } $staff_code = $_GET['staff']; // SQL文を実行 $sql = "SELECT schedule.code, schedule.course, course.title, schedule.staff, staff.name, schedule.start_date, schedule.end_date FROM schedule, course, staff WHERE schedule.course = course.code AND schedule.staff = staff.code AND staff = ? "; $host_params = array($staff_code); $ret = $cn->query($sql, $host_params); if( DB::isError($ret) ){ echo $ret->getMessage() . "
"; echo $ret->getDebugInfo() . "
"; exit(); } $rows = $ret->numRows(); if ($rows < 1) { print "データが存在しませんでした。"; exit(); } ?> fetchRow(DB_FETCHMODE_ASSOC)) { ?>
コード コースコード コース名 スタッフコード スタッフ名 開始日 終了日
free(); $cn->disconnect(); ?> --- ■3. □smartyquiz3.php --- getMessage() . "
"; echo $cn->getDebugInfo() ."
"; exit(); } // SQL文を実行 $sql = "SELECT code, name FROM staff order by name"; $ret = $cn->query($sql); if( DB::isError($ret) ){ echo $ret->getMessage() . "
"; echo $ret->getDebugInfo() . "
"; exit(); } $rows = $ret->numRows(); if ($rows < 1) { print "データが存在しませんでした。"; exit(); } ?>
free(); $cn->disconnect(); ?> ---