情報アプリケーション1 2006 年 10 月 12 日 第四回資料 担当 重定 如彦. 目次 データの送信とフォーム クイズ CGI 複数のパーツのデータの分割方法 配列変数.

Slides:



Advertisements
Similar presentations
ネットワークプログ ラミング論 平成27年 11 月 1 6日 森田 彦. 【基礎課題 6-1 】の解答 ① サーブレットを記述して保管するとコン パイルが自動的に行われる。 ② サーブレットの記述後、開発者がコンパ イル命令を実行しなければならない。 ③ プロジェクト名が Web アプリケーション.
Advertisements

1 検索 ● 検索:特定の文字列を探す ⓪検索を行う範囲を限定する ときは、範囲選択をする。 ① メニューバーの「編集」 → 「検索」とクリックする。 ②「検索する文字列」欄に検 索したい文字を入力する。 ③「次を検索する」または 「すべて検索」をクリック する。 ※「コピー」&「貼り付け」 でも入力できる。
1 PHP プログラムの実行(まと め) 担当 岡村耕二 月曜日 2限 平成 22 年度 情報科学 III (理系コア科目・2年生) 本資料の一部は、堀良彰准教授、天野浩文准教授、菅沼明 准教授等による以前の講義資料をもとにしています。
情報処理 第8回第8回第8回第8回. 目次 (1) スタイルの利用 – スタイルの概要 – スタイルの適用 (1) – 「スタイル」ウィンドウを開く – スタイルの適用 (2) – スタイル適用のセオリー – すべてのスタイルを表示 – スタイルの書式を変える (1) – スタイルの書式を変える (2)
情報基礎演習I(プログラミング) 第9回 6月22日 水曜5限 江草由佳
情報処理実習 第05回 Excelマクロ機能入門 操作マクロ入門.
The Perl Conference Japan ’98 朝日奈アンテナによる コンテンツ情報の取得と利用
2017/3/2 情報処理 第8回.
JavaScript プログラミング入門 2006/11/10 神津.
東京工科大学 コンピュータサイエンス学部 亀田弘之
情報処理演習C2 ファイル操作について (2).
計算機リテラシーM 第2回 メール 伊藤 高廣.
Androidアプリを公開する方法.
情報アプリケーション1 2008年 11月 19日 第二回資料 担当 重定 如彦 .
2017/3/7 情報処理 第8回.
ファイルやフォルダを検索する ①「スタート」→「検索」→「ファイルとフォルダ」とクリックする。
ウェブページ制作の基礎 タグの直接入力によるウェブページの制作 次のスライドへ進んだり,戻ったりしたい時は,右下のボタンをクリック。 次へ.
JSFによるWebアプリケーション開発 第9回
HTMLの記述と WWWにおける情報公開 遠藤
文字書式設定(1) 方法1: ①文字書式を設定したい文字列を選択する。 ②「書式」メニュー → 「フォント」とクリックする。
C#によるWindowsFormApplication入門
Servlet入門(2) 入力フォームをつかったWebアプリ
システムプログラミング 第5回 情報工学科 篠埜 功 ヒアドキュメント レポート課題 main関数の引数 usageメッセージ
VBA H106077 寺沢友宏.
文字配列の課題1 解説 /* a */ #include <stdio.h> main( ) { int i;
キャンパスクラウドによる 実験環境の構築 情報ネットワーク特論 講義資料.
Webコミュニケーショングループ ~PHPの基礎~ M1 宮崎 真.
メールの利用 計算機実習室でThunderbird.
心理学情報処理法Ⅰ やってみよう:Excelを使ってみよう.
Bottle/Pythonによる Webアプリ入門
構造体.
4-3.基本的なPHPスクリプト 2004年6月24日(木) 大北高広 01T6010F.
情報アプリケーション1 2008年 12月 3日 第四回資料 担当 重定 如彦 .
HTTPプロトコル J2EE I 第7回 /
エンタープライズアプリケーション II 第7回 / 2006年7月9日
データベース設計 第9回 Webインタフェースの作成(1)
情報アプリケーション1 2006年 10月 5日 第三回資料 担当 重定 如彦 .
ホームページ作成・更新講座 夏のコンピュータ学習会 画像
第8章 Web技術とセキュリティ   岡本 好未.
メールの利用1 Webメールの利用方法.
ネットワークプログラミング論 平成28年11月21日 森田 彦.
情報工学科 3年生対象 専門科目 システムプログラミング 第5回、第6回 ヒアドキュメント レポート課題 情報工学科 篠埜 功.
Cプログラミング演習 第6回 ファイル処理と配列.
ガジェット・マスターへの まわり道!? ~Ajaxを理解しよう~
制作技術ー4 アクセスカウンタ等付加機能 PHP と Javascript
キャンパスクラウドによる 実験環境の構築 情報ネットワーク特論 講義資料.
制作技術ー3 双方向通信 : CGIシステムと環境変数
情報アプリケーション1 2006年 10月 19日 第四回資料 担当 重定 如彦 .
導入時設定の仕方.
コンピュータ プレゼンテーション.
プログラミングⅠ 平成30年10月22日 森田 彦.
情報基礎演習I(プログラミング) 第11回 7月12日 水曜5限 江草由佳
ファイルやフォルダを検索する ①「スタート」→「検索」とクリックする。 ②「表示項目」から適当なものを選択する。
統計ソフトウエアRの基礎.
アルゴリズムとプログラミング (Algorithms and Programming)
基礎プログラミング演習 第6回.
Webアプリケーションと JSPの基本 ソフトウェア特論 第4回.
基礎プログラミング演習 第3回.
vc-3. ダンプリスト,配列 (Visual Studio C++ の実用知識を学ぶシリーズ)
デジカメの写真を挿入してみよう ~ Word 98 編~
情報基礎演習I(プログラミング) 6月8日 水曜5限 江草由佳
情報基礎演習I(プログラミング) 第8回 6月8日 水曜5限 江草由佳
Webページに動きを持たせるJavascript言語について 例題のプログラムを通して体験的に理解することとします。
ファイルの読み込み, ファイルからのデータの取り出し, ファイルの書き出し
Action Method の実装 J2EE II 第9回 2004年12月2日.
ウェブデザイン演習 第6回.
vc-3. ダンプリスト,配列 (Visual Studio C++ の実用知識を学ぶシリーズ)
プログラミング演習II 2004年11月 2日(第3回) 理学部数学科・木村巌.
JSFによるWebアプリケーション開発 第7回
3.テキストボックスによる データ入力 データ入力と表示のプログラム.
Presentation transcript:

情報アプリケーション1 2006 年 10 月 12 日 第四回資料 担当 重定 如彦

目次 データの送信とフォーム クイズ CGI 複数のパーツのデータの分割方法 配列変数

データの送信とフォーム 掲示板のように、ユーザの入力した内容を使って処理 を行うような CGI を作成するためには、フォームを使用 する フォームは HTML 文章内に、以下のような方法で記述す る この中にフォームのパーツを記述する 上記のフォームで表示された送信ボタンをクリックす ると、 FORM タグの action 属性で記述された cgi に、 フォームに 入力された内容が伝えられ、 cgi が実行される CGI の場合、一般に method の部分は POST と記述する

フォームの HTML 送信メッセー ジ フォームを POST メソッドで送った場合、以下のような データがウェブサーバに送られる。また、送られるデータは フォームのパーツの名前=パーツのデータ という形式で送られる POST ・・・・・・ ・・・・・ ・・・・ 送られるデータ ・・・・・ 通常の HTML 送信メッセージ この部分はヘッダと呼ばれる なお、 1 行目は POST となる フォームの内容が記されたデータ この部分はボディと呼ばれる ヘッダとボディの境界を表す空白行

フォームのパーツの種類(1) テキストボックス 文字を入力するためのテキストボックス。 CGI 用のフォームの場合、 name 属性で名前を設定する必要がある。フォームが送られると、 CGI に 名前 = テキストボックスの中身 というデータが送られる。また、 value 属性を 記述することで、初期値を設定可能。なお、テキストボックスに日本語を入 力 した場合の処理方法については次回解説予定 実行ボタン 実行ボタンをクリックすると FORM タグの action 属性に記述された URL が 呼び出される。 value 属性でボタンに表示する文字を設定可能 取り消しボタン これによって表示されるボタンをクリックするとそのフォームの内容が すべてリセットされる。 value 属性でボタンに表示する文字を設定可能

フォームのパーツの種類(2) チェックボックス チェックボックスがチェックされている状態で実行ボタンがクリッ クされて フォームが送られると、 CGI に 名前 =on というデータが送られる また、チェックされていないボタンについてのデータは送られない ラジオボタン チェックボックスと似ているが、複数のラジオボタンを記述し、 name 属性の値を同じものに設定しておくと、それらのラジオボタン の 中で同時に一つのボタンしか ON にならないようになる フォームが送られると、 CGI に 名前 = データ というデータが送ら れる テキストエリア 初期文章 複数行入力可能なフォームが作成される テキストエリアタグの開始タグと終了の間に文章を記述することで、 最初にテキストエリア内に表示する文章を設定可能 CGI へのデータの送られ方はテキストボックスとほぼ同じ

フォームへのデータの転送例 (1) フォームが記述された HTML 文章の作成 まず、メモ帳に以下の HTML をデスクトップに form.html という名前で ファイルに保存し、ffftpを使ってウェブサーバにアップロード すること。 フォーム

フォームへのデータの転送例 (2) フォームが転送したデータを表示する CGI の作 成 メモ帳を新しく開き、以下の CGI をデスクトップに form.cgi という名前 で 保存し、 ffftp を使ってウェブサーバにアップロードし、属性を変更する こと。 #!/usr/local/bin/perl print "Content-Type: text/html; charset=sjis\n\n"; $clength = $ENV{'CONTENT_LENGTH'}; read(STDIN, $qstring, $clength); print " 送られたデータは、「 $qstring 」です \n"; 解説: ① $ENV{‘CONTENT_LENGTH’} という変数の中にフォームの データのサイズが格納されているので、それを $clength という変数に代入 する ② read という関数を使ってフォームのデータを必要なサイズ( $clength バイ ト)だけ 読み込んで、 $qstring という変数に代入する ① ②

フォームへのデータの転送例 (3) 複数の種類のフォームパーツがある場合 G:\www の form.html をメモ帳で開き、以下の赤い部分を追加し保存 せよ チェックボックス1 チェックボックス2 ラジオボタン1 ラジオボタン2 複数のフォームのパーツがある場合、それぞれのパーツのデータは 例えば以下のように & 記号で区切って送られる textbox=test&cbox1=on&rbox=2

クイズ CGI (1) フォームが記述された HTML 文章の作成 まず、メモ帳に以下の HTML をデスクトップに quiz.html という名前で ファイルに保存し、ffftpを使ってウェブサーバにアップロードすること クイズ ボアソナードタワーの最上階は何階? 25階 26階 27階

クイズ CGI (2) 答えあわせを行う CGI の作成 メモ帳を新しく開き、以下の CGI をデスクトップに quiz.cgi という名前で 保存し、 ffftp を使ってウェブサーバにアップロードし、属性を変更すること。 #!/usr/local/bin/perl print "Content-Type: text/html; charset=sjis\n\n"; $clength = $ENV{'CONTENT_LENGTH'}; read(STDIN, $qstring, $clength); print "$qstring \n"; if ($qstring eq "answer=27") { print " 正解です。 \n"; } else { print " 不正解です。 \n"; } 解説: 送られたデータを調べることで、 正解かどうかをチェックしている 余裕があれば HTML で答えを表示 するようにプログラムを改造すること

複数のパーツのデータの分割方法 form.cgi のように複数のパーツがある場合、 textbox=abc&cbox1=on&rbox=2 フォームのパーツのデータは上記のように 1 行にまとめて送られる それぞれのパーツのデータは & 記号で区切られている Perl では、 split という関数を使うことで文字列を特定の文字で 分割することができる。 split は以下のように記述する split ( / 分割する文字 /, 分割する文字列) ; 例えば split ( /&/, “textbox=abc&cbox1=on&rbox=2” ) ; 上記のプログラムが実行されると、 2 つ目の引数の文字列が 「 textbox=abc 」、「 cbox1=on 」、「 rbox=2 」の3つに分割される

配列変数(1) Perl では split によって分割された文字列データを配列変数 と 呼ばれる種類の変数に格納することができる 配列変数の特徴は以下の通り 変数名の前に $ ではなく @ 記号を付ける 配列変数の中には複数のデータを格納することができる split によって分割されたデータを配列変数に格納するには、 以下のように = = split ( /&/, “textbox=abc&cbox1=on&rbox=2” ) ;

= split ( /&/, “textbox=abc&cbox1=on&rbox=2” ) ; と記述することで、という配列変数に「 textbox=abc 」、 「 cbox1=on 」、「 rbox=2 」の3つの文字列が保存される。 cbox1=on rbox=2