Taro php.jtdc

Similar documents
1

PowerPoint プレゼンテーション

2003年度 情報処理概論

hands_on_4.PDF

Taro13-007linux5.jtdc

システム分析とデータベース設計

Microsoft Word - PHP_SQLServer2012

ii II Web Web HTML CSS PHP MySQL Web Web CSS JavaScript Web SQL Web

PHP と Postgresql を用いた 図書館管理システムの構築 裘彬濱 Qiu Binbin 南山大学 情報理工学部

第 7 回の内容 動的な Web サイト フォーム Web システムの構成


( 前回 ) 提出課題 課題 1( 提出課題 ): データベースからデータを読み込み, そのデータを表示する Web ページ作成してみましょう user テーブルから書籍のデータを一覧表示する. 手順 1:PHP のファイルを user_list.php という名前で作業フォルダに作成する. プログ

Microsoft Word - Android_SQLite講座_画面800×1280

PowerPoint プレゼンテーション

2019年度 Webシステムプログラミングa

PowerPoint Presentation

情報システム設計論II ユーザインタフェース(1)

ビジネスサーバ設定マニュアル_Standard応用編

Si 知識情報処理


PowerPoint プレゼンテーション

_IMv2.key

Sinatra と MongoDB 今回は Sinatra で MongoDB の操作を体験してみます 進捗に合わせて ドライバから Ruby で使える便利な ORM の紹介をします


C:\Apache Software Foundation\Apache2.2\htdocs\sample\login.html サンプルプログラム passworddisc.php <head><title> ログイン </title></head> $user=$_post['user']; $

Microsoft Word - manual

フォームとインナー HTML を使って動的にページ内の文章を変更しよう 問題 1. つぎの指示と画面を参考に HTML を組みなさい 仕様 テキストボックスに任意の文字を入力し [ コメント ] ボタンをクリックすると 下部の文章がテキストボックスの内容に置き換わる フォーム名 : f1 テキストボ

JavaScript 演習 2 1

10th Developer Camp - B5

Webデザイン論

PowerPoint Presentation

<48746D6C8AEE91628D758DC02E786C73>

データを TreeView コントロールで表示 VisualStudio2017 の Web サイトプロジェクトで bootstrap, 及び script フォルダの js ファイルが使用できるマスターページを親とする TestTreeView.aspx ページを作成します 下記の html コー

実験 5 CGI プログラミング 1 目的 動的にWebページを作成する手法の一つであるCGIについてプログラミングを通じて基本的な仕組みを学ぶ 2 実験 実験 1 Webサーバの設定確認と起動 (1)/etc/httpd/conf にある httpd.conf ファイルの cgi-bin に関する

Microsoft PowerPoint - widget.ppt

CMP演習

forever朝活

◎phpapi.indd

PowerPoint プレゼンテーション

Microsoft PowerPoint - Lecture_3

復習 (SQL 文 ) 3/6 復習 (SQL 文 ) 4/6 表の作成 CREATE TABLE...; 表の削除 DROP TABLE テーブル名 ; 表内のデータが全て消えてしまう. 表内のデータを得る SELECT 列名 FROM 表名...; 表にデータを挿入する. INSERT INTO

2 Java 35 Java Java HTML/CSS/JavaScript Java Java JSP MySQL Java 9:00 17:30 12:00 13: 項目 日数 時間 習得目標スキル Java 2 15 Web Java Java J

tkk0408nari

Microsoft Word - PHP演習資料.doc

,, create table drop table alter table

<4D F736F F D A957A A A8FEE95F18F88979D DEC90AC E646F63>


Microsoft Word - wpphpmysql.doc

PowerPoint プレゼンテーション

PostgreSQL

Microsoft PowerPoint - myadmin.ppt

リスト 1 1 <HTML> <HEAD> 3 <META http-equiv="content-type" content="text/html; charset=euc-jp"> 4 <TITLE> 住所の検索 </TITLE> 5 </HEAD> 6 <BODY> <FORM method=

Dolteng Scaffoldに対する機能追加とマスタ-ディテールScaffoldの紹介

スライド タイトルなし

Webデザイン論

Case 0 sqlcmdi.parameters("?tencode").value = Iidata(0) sqlcmdi.parameters("?tenname").value = Iidata(1) 内容を追加します sqlcmdi.executenonquery() Case Else

GulfStar1.5ユーザーマニュアル

Microsoft Word - sample_adv-programming.docx

2019年度 Webシステムプログラミングa

Microsoft PowerPoint - Lecture_2

( 目次 ) 1. はじめに 開発環境の準備 仮想ディレクトリーの作成 ASP.NET のWeb アプリケーション開発環境準備 データベースの作成 データベースの追加 テーブルの作成

システム設計書 システム名 : 居酒屋検索システム 教育情報システム学講座 岩淵直人 プロクター鎌田奉訓 1. 要求仕様書に関する内容 システム機能の概要 居酒屋の新規登録および削除 編集が行えること 検索機能は人数 料金 場所 ジャンル( 和 洋 中 ) で検索できること 検

前ページからの続き // テキストボックス02 id 属性で取得 // id 属性で取得する場合は一意に決まるので 何番目かの指定は不要 var textbox02elem = document.getelementbyid("text_box02_id"); if ("001" == statee


2009 Web B012-1

モバイルアプリを Azure で作る - データを扱う Azure Storage を利 してデータを保存する 本稿では PHP と Windows Azure を使って 画像などのファイルを扱うアプリケーションを開発する方法を説明します Windows Azure Platform では データの

Webプログラミング演習

Oracle JDeveloper 10g ADF Creation Date: Jul 07, 2004 Last Update: Jul 08, 2004 Version 1.0

データベースS

: ORDER BY

共通フィルタの条件を設定する 迷惑メール検知 (SpamAssassin) の設定 迷惑メール検知 (SpamAssassin) とは.

CodeIgniter Con 2011, Tokyo Japan, February

1 SQL Server SQL Oracle SQL SQL* Plus PL/SQL 2 SQL Server SQL Server SQL Oracle SQL SQL*Plus SQL Server GUI 1-1 osql 1-1 Transact- SQL SELECTFROM 058

WordPress Go Go

Microsoft Word - ehondbonXAMPPについて ver.1.1

1 ex01.sql ex01.sql ; user_id from (select user_id ;) user_id * select select (3+4)*7, SIN(PI()/2) ; (1) select < > from < > ; :, * user_id user_name

メディプロ1 Javaサーブレット補足資料.ppt

PowerPoint プレゼンテーション

プレポスト【問題】

PowerPoint プレゼンテーション

Microsoft Word - 06.doc

Wiki Wiki Wiki...

オンラインテスト

ご存知ですか? データ転送

第3回_416.ppt

2019年度 Webシステムプログラミングa

PowerPoint プレゼンテーション

MxLogonサーバサイドツールキット用UI

PowerPoint プレゼンテーション

JavaScript演習

Microsoft PowerPoint pptx

■新聞記事

目次 1. 概要 2. サーバーへの設置 3. 設定 4. デザイン変更 5. 外国語対応 6. 利用規定 7. 更新履歴

SVG資料第10回目(その2) Ajaxによる同期通信と非同期通信の違い

連絡先

データベースアクセス

データベースS 演習資料

HeartCore(PHP 版 ) インストール手順について説明いたします なお 本資料は 例として下記内容を前提として説明しております 環境情報 対象 OS: Linux ( ディストリビューション : Red Hat Enterprise Linux Server) APサーバ : Apache

<td width=99%><input type="file" size="80" name="file"></td> <td width=1% nowrap align=right valign=top> 削除キー : </td> <td width=99%><input type="passw

Web データ管理 JavaScript (3) (4 章 ) 2011/12/21( 水 ) 湘南工科大学講義資料 Web データ管理 (2011) 阿倍 1/18

Transcription:

4-5 PHP 演習問題 演習 1 フォルダ \data\dbserver\php のPHPスクリプト randamu.php を使い, データベース testdb のテーブル table1 を取り込み, ランダムにデータを表示させるWebサーバを構築し, クライアント( Windows 側 ) のブラウザURL epc**.cen.hic.ac.jp/randamu.php を入力し, 確認する ( 図 1) 図 1 データのランダム表示 演習 1 解答 /home/wwwadmin/www/ 内に randamu.php を作成する <html> <head> <title> 会員一覧をランダムに一件表示する </title> </head> <body> <h3> 会員一覧をランダムに一件表示する </h3> <?php // データベースに接続 $conn=pg_connect("","","","","testdb"); if (!$conn) { echo " 接続エラーが発生しました\ n"; exit; // データ数を取得 $sql = "SELECT COUNT(*) AS cnt FROM table1;"; $row = pg_fetch_array($res, 0, PGSQL_ASSOC); $dtcnt = $row["cnt"] - 1; 1 if ($dtcnt < 0) { 2 die(" データが存在しません "); -1-

// データを取り出す // 取り出すデータの位置をランダムに生成 mt_srand((double)microtime()*100000); $st = mt_rand(0, $dtcnt); 3 4 // 取り出すデータ数 1 $lim = 1; // データを取り出す $sql = "SELECT id, nam, pre, ag FROM table1 LIMIT $lim OFFSET $st"; 5 // 取り出したデータを表示 echo "<table border= \"20\">"; echo "<td> 会員番号 </td>"; echo "<td> 氏名 </td>"; echo "<td> 住所 </td>"; echo "<td> 年令 </td>"; for ($i = 0; $i < pg_numrows($res); $i++) { $row = pg_fetch_array($res, $i, PGSQL_ASSOC); 6 7 echo "<td>"; echo pg_result($res,$i,"id"); echo "<td>"; echo pg_result($res,$i,"nam"); echo "<td>"; echo pg_result($res,$i,"pre"); echo "<td>"; echo pg_result($res,$i,"ag"); echo "</table>"; // 接続を解除 pg_close($conn);?> </body> </html> 各 PHPスクリプトの意味は, 次のとおりである 1 レコード数から1 引いて $dtcnt に格納する 2 $dtcntが0より小さければ ( データが存在しません ) と表示する 3 mt_srandでランダムの精度を決定する microtime() は秒数のマイクロ秒以下で, これを100000 倍したもので乱数のもととなる (double) は実行するコンピュータの倍精度実数の範囲内でのみ値を処理するもの 4 データ数分をランダムに決定し,$stに格納する 5 データの表示位置は $st より始まり $lim のに格納されている数字の分だけ取得す -2-

る 6 $i=0 から, データベースのレコード数分繰り返す 7 $i 行目を配列として取得する 演習 2 フォルダ \data\dbserver\php のPHPスクリプト kousin.php を使い, データベース testdb のテーブル table1 を取り込み, 指定したデータの内容を変更するWebサーバを構築し, クライアント (Windows 側 ) のブラウザURL epc**.cen.hic.ac.jp/kousin.php を入力し, 確認する ( 図 2) ただし, 氏名, 住所, 年令のどこか1カ所以上変更し変更ボタンを押すとデータベースの内容を変更するようにする 図 2 データの変更 演習 2 解答 /home/wwwadmin/www/ 内に kousin.php を作成する <html> <head> <title> データを変更する </title> </head> <body> <h3> データを変更する </h3> <?php // データベースに接続 $conn=pg_connect("","","","","testdb"); if (!$conn) { echo " 接続エラーが発生しました\ n"; exit; -3-

// 変換するデータを取得 if (count($_post) > 0) { $id = $_POST["id"]; $nam = $_POST["nam"]; $pre = $_POST["pre"]; $ag = $_POST["ag"]; // データが送信されたときはデータを変更 if (strlen($id) and strlen($nam) and strlen($pre) and strlen($ag)) { // データを変更 $sql = "UPDATE table1 SET nam = '".$nam."', pre = '".$pre."', ag = ".$ag." WHERE (id = ".$id.");"; 1 2 3 $res = pg_query($conn, $sql) or die(" データ変更エラー "); // データを取り出す $sql = "SELECT id, nam, pre, ag FROM table1 ORDER BY id"; 4 // 取り出したデータを表示 echo "<table border= \"20\">"; echo "<td> </td>"; echo "<td> 会員番号 </td>"; echo "<td> 氏名 </td>"; echo "<td> 住所 </td>"; echo "<td> 年令 </td>"; for ($i = 0; $i < pg_numrows($res); $i++) { $row = pg_fetch_array($res, $i, PGSQL_ASSOC); echo "<form method= \"POST\" action= \"".$_SERVER["PHP_SELF"]."\">"; 5 echo "<td><input type= \"submit\" value= \" 変更 \" name= \"sub1\"></td>"; echo "<input type= \"hidden\" value= \"".$row["id"]."\" name= \"id\">"; echo "<td>".$row["id"]."</td>"; echo "<td><input type= \"text\" name= \"nam\" value= \"".$row["nam"]."\"></td>"; echo "<td><input type= \"text\" name= \"pre\" value= \"".$row["pre"]."\"></td>"; echo "<td><input type= \"text\" name= \"ag\" -4-

value= \"".$row["ag"]."\"></td>"; echo "</form>"; echo "</table>"; // 接続を解除 pg_close($conn);?> </body> </html> 各 PHPスクリプトの意味は, 次のとおりである 1 table1 をアップデートする 2 $nam をnam に追加する 3 id 番号については変更しない 4 実行 5 変更したときの文字をフォームに表示する 演習 3 フォルダ \data\dbserver\php のPHPスクリプト taikai.php を使い, データベース testdb のテーブル table1 を取り込み, 指定したデータを削除するWebサーバを構築し, クライアント (Windows 側 ) のブラウザURL epc**.cen.hic.ac.jp/taikai.php を入力し, 確認する ( 図 3) 図 3 データの削除 -5-

演習 3 解答 /home/wwwadmin/www/ 内に taikai.php を作成する <html> <head> <title> 退会データを削除する </title> </head> <body> <h3> 退会データを削除する </h3> <?php // データベースに接続 $conn=pg_connect("","","","","testdb"); if (!$conn) { echo " 接続エラーが発生しました\ n"; exit; // 削除するデータを取得 if (count($_post) > 0) { $id = $_POST["id"]; // データが送信されたときはデータを削除 if (strlen($_post["id"]) > 0) { // データを削除 $sql = "DELETE FROM table1 WHERE (id = ".$id.");"; pg_query($conn, $sql) or die(" データ削除エラー "); 1 2 // データを取り出す $sql = "SELECT id, nam, pre, ag FROM table1 ORDER BY id"; 3 // 取り出したデータを表示 echo "<table border= \"20\">"; echo "<td> </td>"; echo "<td> 会員番号 </td>"; echo "<td> 氏名 </td>"; echo "<td> 住所 </td>"; echo "<td> 年令 </td>"; for ($i = 0; $i < pg_numrows($res); $i++) { $row = pg_fetch_array($res, $i, PGSQL_ASSOC); echo "<form method= \"POST\" action= \"".$_SERVER["PHP_SELF"]."\">"; echo "<td><input type= \"submit\" value= \" 削除 \" name= \"sub1\"></td>"; echo "<input type= \"hidden\" value= \"".$row["id"]."\" name= \"id\">"; echo "<td>".$row["id"]."</td>"; echo "<td>".$row["nam"]."</td>"; echo "<td>".$row["pre"]."</td>"; echo "<td>".$row["ag"]."</td>"; -6-

echo "</form>"; echo "</table>"; // 接続を解除 pg_close($conn);?> </body> </html> 各 HTMLの意味は, 次のとおりである 1 $_POST["id"] に文字が一つ以上あれば2へ進む 2 id 番号のtable1データを削除する 3 SELECT でid 番号順にデータを並べ,$sql に格納する -7-