1 PHP プログラムの実行(まと め) 担当 岡村耕二 月曜日 2限 平成 22 年度 情報科学 III (理系コア科目・2年生) 本資料の一部は、堀良彰准教授、天野浩文准教授、菅沼明 准教授等による以前の講義資料をもとにしています。

Slides:



Advertisements
Similar presentations
1 プリミティブ Web サービスの 入出力データに関する一考察 2005 年 3 月 21 日 松江工業高等専門学校 情報工学科 奈良先端科学技術大学院大学 情報科学研究科 越田高志 電子情報通信学会 2005年総合 大会.
Advertisements

1 実技演習1 2008/01/28,29 JaLTER Morpho 講習会. 2 起動・接続 各自、コンピュータを起動してネットワーク に接続してください。 各自、コンピュータを起動してネットワーク に接続してください。 IP アドレス自動取得 IP アドレス自動取得 無線 LAN 使用可 無線.
JavaScript における DOM 操作 XML 読み込み Ajax( 動的 HTML 編集 ) 情報システム工学科ラシキアゼミ 3年 H 107072 田中直樹.
1 PHP 文法 担当 岡村耕二 月曜日 2限 平成 20 年度 情報科学 III (理系コア科目・2年生) 本資料の一部は、堀良彰准教授、天野浩文准教授等による 以前の講義資料をもとにしています。
Windows 環境から SAS を使う 長野 祐一郎 1. データのダウンロード 2. データの加工 3. プログラムの作成 4.TeraTerm によるプログラムの実行 5. 処理結果の確認 6.SAS のデータ処理を概観 今回の授業では、 Windows 環境で作成されたデータを.
ネットワークプログ ラミング論 平成27年 11 月 1 6日 森田 彦. 【基礎課題 6-1 】の解答 ① サーブレットを記述して保管するとコン パイルが自動的に行われる。 ② サーブレットの記述後、開発者がコンパ イル命令を実行しなければならない。 ③ プロジェクト名が Web アプリケーション.
Web アプリケーション開発 ~図書館管理システム~ 北海道情報大学 情報メディア学 部 情報メディア学科 新井山ゼミ 高橋 隼.
1 JSP の作成 JSF による Web アプリケーション 開発 第 4 回. 2 ここでの内容 JSF での JSP の作り方と動かし方につい て学ぶ。
情報アプリケーション1 2006 年 10 月 12 日 第四回資料 担当 重定 如彦. 目次 データの送信とフォーム クイズ CGI 複数のパーツのデータの分割方法 配列変数.
1 安全性の高いセッション管理方 式 の Servlet への導入 東京工業大学 理学部 千葉研究室所属 99-2270-6 松沼 正浩.
情報処理 第 13 回. 今日の内容 練習用ファイルのダウンロードデータの入力 – データベースに適したデータの入力方法 – ウィンドウ枠の固定 ( 見出し行の固定 ) データの並べ替え –1 つの列の値で並べ替え – 複数の列の値で並べ替え.
情報基礎A 情報科学研究科 徳山 豪.
DB(データベース)のおはなし 作成者:小野正広 DBと言っても、  ドラゴンボール ではないですぞ! 3/1/2017.
The Perl Conference Japan ’98 朝日奈アンテナによる コンテンツ情報の取得と利用
発生生物学特論 PowerPoint の使い方
JPAを利用した RESTful Webサービスの開発
PHP 文法 担当 岡村耕二 月曜日 2限 平成22年度 情報科学III (理系コア科目・2年生)
授業の概要と実習環境説明 担当 岡村耕二 月曜日 2限 平成20年度 情報科学III (理系コア科目・2年生)
PHP プログラムの実行(まとめ) SQL 概要
授業の概要と実習環境説明 担当 岡村耕二 月曜日 2限 平成22年度 情報科学III (理系コア科目・2年生)
REST型Webサービスによる 楽曲検索システムの開発
Struts1.xの脆弱性(CVE ) に対するSDEの対処:wrapタイプ (パッチのご提供)
エンタープライズアプリケーション II 第10回 / 2006年7月23日
Servlet J2EE I 第8回 /
Servlet入門(2) 入力フォームをつかったWebアプリ
PHP 概要 担当 岡村耕二 月曜日 2限 平成21年度 情報科学III (理系コア科目・2年生)
JavaServlet&JSP入門 01K0018 中村太一.
第4回 個人の動画配信補足のためのWeb構築
Bottle/Pythonによる Webアプリ入門
Web App Semi 2008 #1 Web App Semi 2008 #1.
PHP プログラムの実行 担当 岡村耕二 月曜日 2限 平成22年度 情報科学III (理系コア科目・2年生)
4-3.基本的なPHPスクリプト 2004年6月24日(木) 大北高広 01T6010F.
PHP プログラムの実行 担当 岡村耕二 月曜日 2限 平成20年度 情報科学III (理系コア科目・2年生)
ビューとコントローラ.
PHP 文法 担当 岡村耕二 月曜日 2限 平成21年度 情報科学III (理系コア科目・2年生)
HTTPプロトコルとJSP (1) データベース論 第3回.
JQueryでAjax 藤田@ジャストプレイヤー ※参考しまくり文献 jQuery日本語リファレンス.
Curlの仕組み.
PHP 概要 担当 岡村耕二 月曜日 2限 平成20年度 情報科学III (理系コア科目・2年生)
HTTPプロトコル J2EE I 第7回 /
Web上で管理・利用できる 面接予約データベースシステムの構築
ま と め と 補 足 ネットワークシステムⅠ 第15回.
09 06/23 PHP と SQL (MySQL) の連携 その2
Servlet入門(2) 入力フォームをつかったWebアプリ
データベース設計 第9回 Webインタフェースの作成(1)
基礎プログラミング演習 第1回.
第8章 Web技術とセキュリティ   岡本 好未.
ネットワークプログラミング論 平成28年11月21日 森田 彦.
情報工学科 3年生対象 専門科目 システムプログラミング 第5回、第6回 ヒアドキュメント レポート課題 情報工学科 篠埜 功.
ガジェット・マスターへの まわり道!? ~Ajaxを理解しよう~
制作技術ー4 アクセスカウンタ等付加機能 PHP と Javascript
Javaによる Webアプリケーション入門 第6回
PHP と SQL (MySQL) の連携 複数のテーブルを扱う
09 06/23 PHP と SQL (MySQL) の連携 その1
制作技術ー3 双方向通信 : CGIシステムと環境変数
Jakarta Struts (2) ソフトウェア特論 第11回.
情報コミュニケーション入門e 第11回 Part2 Web入門(1)
情報アプリケーション1 2006年 10月 19日 第四回資料 担当 重定 如彦 .
Webプロキシ HTTP1.0 ヒント CS-B3 ネットワークプログラミング  &情報科学科実験I.
09 06/23 PHP と SQL (MySQL) の連携 その2
PHP と SQL (MySQL) の連携 大量のデータを扱う
PHP 概要 担当 岡村耕二 月曜日 2限 平成22年度 情報科学III (理系コア科目・2年生)
データベース設計 第7回 実用データベースの運用例 クライアント=サーバシステム(1)
個人の動画配信のためのWebサーバ構築 06A1058 古江 和栄.
Webアプリケーションと JSPの基本 ソフトウェア特論 第4回.
システムプログラミング 第10回 プロセス間通信3 簡易Web server(準備) Chat プログラム 担当:青木義満、篠埜 功
09 06/23 PHP と SQL (MySQL) の連携 その3
PHP と SQL (MySQL) の連携 日本語のデータを扱う
Webプロキシ HTTP1.1 ヒント CS-B3 ネットワークプログラミング  &情報科学科実験I.
HTTPプロトコルの詳細 M1 峯 肇史.
Presentation transcript:

1 PHP プログラムの実行(まと め) 担当 岡村耕二 月曜日 2限 平成 22 年度 情報科学 III (理系コア科目・2年生) 本資料の一部は、堀良彰准教授、天野浩文准教授、菅沼明 准教授等による以前の講義資料をもとにしています。

2 前回のおさらい(1) PHP プログラムの処理形態 1.PHP 処理モジュールがインストールされている web サーバ上で, web サーバ経由で実行させる. 2.PHP がコマンドラインで実行できるようにインストー ルされているサーバ上で,コマンドラインから起動す る. PHP プログラムの入出力 – コマンドラインから実行される場合は簡単 ディスプレイ,キーボード,ファイル –web サーバから実行される場合は,単純ではない.

3 前回のおさらい(2) web サーバで実行される PHP プログラムの入出力 –HTTP の力を借りる. 入力は, HTTP リクエストから受け取る. 出力は, HTTP レスポンスに埋め込む. web サーバ PHP 処理 モジュー ル 実行中の PHP プログラ ム インター ネット クライアント HTTP レス ポン ス HTTP リク エス ト

4 前回のおさらい(3) クライアントへの間接的な出力 –HTML データに print( ) の出力が埋め込まれる. – ステータス行やメッセージヘッダが自動的に付加され る. PHP プログラム print( ) で出力すると, その内容が HTML データ に埋め込まれてクライア ントに返送される. PHP からの出 力を含む web ページ

5 前回のおさらい(4) クライアントからの間接的な入力 –HTML の ~ タグを用いる. –submit タイプのボタンがクリックされると,集めた 内容を HTTP で送信する. 利用者の 入力を処理 する PHP プログラム タグのあるページで 入力を集めて, PHP プログラムに送る. 利用者の入 力データを フォームに 含む web ページ

6 前回のおさらい(5) ~ タグ –method :ブラウザに入力されたデータをサーバに送信 するときの形式 ( GET または POST ) GET :データを URL の末尾に追加して送信する. POST :データを URL とは別に送信する. –action :集めたデータの送信先の URL 通常は, PHP プログラム( HTML 埋め込みも可)ま たは CGI プログラム...

7 前回のおさらい(6) 実際の入力部分は, タグで...

8 前回のおさらい(7) タグの例 – :送信ボタン – :1行の入力欄 他に –"radio" (ラジオボタン), "password" (パスワード形式の入 力欄), "checkbox" (チェックボックス), "file" (ファイ ルの送信欄), "hidden" (隠しデータ), – ~ (複数行の入力欄) – 選択肢の名前... (プルダウンメニュー)

9 前回の補足と訂正 複数選択の可能な "checkbox" タイプの入力欄 – タグの name 属性の値は,複数選択された場 合には PHP の配列に格納されるように, "q2[]" のよう な名前にしておくとよい. 質問 1 あなたの好きな果物は?(複数選択可) リンゴ バナナ キウイ

10 PHP と入出力(承前)

11 外部からのデータの受け取り方(1) 入力データを PHP プログラムへ送るのは ~ を使えばよいとして … 受け側の PHP プログラムでは, ~ タグ から送られてきたデータをどのようにして受け取ればよい か? HTML ファイ ル 受け側の PHP プログラム タグのあるページで 入力を集めて, PHP プログラムに送る. ? 入力された データ POST または GET

12 HTML ファイ ル 外部からのデータの受け取り方(2) PHP プログラムの外部から送り込まれるデータ – ~ タグで集める利用者入力データ以 外のものもある. PHP プログラムを実行している web サーバに関する 情報 PHP プログラム自身に関する情報(ファイル名な ど) 受け側の PHP プログラム 利用者が入力 したデータ サーバの 情報 プログラム 自身の情報 POST または GET

13 外部からのデータの受け取り方(3) web サーバ経由で起動された PHP プログラムには,外部か ら来るデータが自動的に格納される,定義済みの連想配列 がある. –$_SERVER[" 名前 "] –$_ENV[" 名前 "] –$_POST[" 名前 "] –$_GET[" 名前 "] PHP プログラムが web サーバ経由で起動されると,上記の 配列はすでにアクセス可能になっている. – 要素には値もセットされている.

14 $_SERVER[' 名前 '] と $_ENV[' 名前 '] $_SERVER[" 名前 "] – その PHP プログラムを実行している web サーバに関する 情報 たとえば: $_SERVER["HTTP_HOST"] :サーバのホスト名 $_SERVER["SERVER_ADDR"] :サーバの IP アドレ ス $_SERVER["HTTP_USER_AGENT"] :その PHP プ ログラムにアクセスしてきたクライアントがサーバ に対して名乗っているブラウザ名 $_ENV[" 名前 "] – その PHP プログラムが実行されるときの環境に関する 情報

15 これらの連想配列の内容を確認する方法 phpinfo( ) 関数を実行する – 第 4 回のスライドで紹介した.

16 $_POST[' 名前 '] その PHP プログラムに対して, POST メソッドで送り込ま れたデータ HTML ファイ ル 受け側の PHP プログラム タグのあるページで 入力を集めて, PHP プログラムに送る. POST 入力された データ $_POST[" 名前 "] 入力された データ

17 $_GET[' 名前 '] その PHP プログラムに対して, GET メソッドで送り込まれ たデータ HTML ファイ ル 受け側の PHP プログラム タグのあるページで 入力を集めて, PHP プログラムに送る. GET 入力された データ $_GET[" 名前 "] 入力された データ

18 連想配列 $_POST[ ] ( $_GET[ ] )のキー ( , )タグの中で指定 された name 属性の値が,これらの連想配列のキー(要素 を特定するための名前)になる. HTML ファイ ル 受け側の PHP プログラム POST $_POST["key1"] 入力データ

19 2 段以上の POST / GET タグで集めたデータを受け取った PHP プログラ ムが,さらに次の PHP プログラムにデータを伝えるため の タグを含むことがある. HTML ファイ ル 受け側の PHP プログラム POST/GET 受け側の PHP プログラム POST/GET さらにデータ を入力して, また送信ボタ ンを クリック データを入力 して,送信ボ タンをクリッ ク

20 POST/GET したデータの到達範囲 そのときの POST ( GET ) メソッドで送信されたデータが, 送信先の PHP プログラムの $_POST[ ] ( $_GET[ ] )連 想配列に入る. HTML ファイ ル 受け側の PHP プログラム 1 POST/GET 入力データ 1 入力データ 2 $_POST["key1"] ( $_GET["key1"] ) 受け側の PHP プログラム 2 POST/GET $_POST["key1"] ( $_GET["key1"] ) ここで送信されるデー タは, そのままでは,プログ ラム2には伝わらない.

21 入力されたデータを2段以上先まで伝える方法 いくつか方法はあるが,簡単なものは: –"hidden" タイプの タグで HTML ファイ ル 受け側の PHP プログラム 1 POST/GET 入力データ 1 入力データ 2 受け側の PHP プログラム 2 POST/GET $_POST["key1"] $_POST["key2"] ( $_GET["key1"] ) ( $_GET["key2"] ) $_POST["key1"] ( $_GET["key1"] ) 心情的には, こうしたい が,文法的 に ×

php プログラミング 基本的な文法を用いる。 – 分岐、ループ 配列を用いる。 文字列を扱う。 HTML から、入力したデータを渡してもらう。 HTML から、ファイルでデータを渡してもらう。 22