Gorinphp0928

444 views

Published on

2009年

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
444
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Gorinphp0928

  1. 1. AW技能五輪 第4回 PHPセミナー 必要な機能と 実現方法を 確認しようの回 資料作成・サポート:電設部技能五輪プロジェクト AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  2. 2. ◆はじめに まず はじめに AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  3. 3. ◆はじめに 課題見ましたよね AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  4. 4. ◆はじめに 楽勝です。 (内容的には) AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  5. 5. ◆はじめに 問題は量です>< AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  6. 6. ◆はじめに 時間配分だいじ! なので・・・ AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  7. 7. ◆はじめに・今日の流れ・本番までの流れ・本番での流れ    を練っておきましょう     (意識して) AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  8. 8. ◆1)流れの確認1-1.今日の流れ AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  9. 9. ◆1)流れの確認1-1.今日の流れ1)流れの確認 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  10. 10. ◆1)流れの確認1-1.今日の流れ1)流れの確認2)本番で使うDBについて AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  11. 11. ◆1)流れの確認1-1.今日の流れ1)流れの確認2)本番で使うDBについて3)phpMyAdminでDB作成 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  12. 12. ◆1)流れの確認1-1.今日の流れ1)流れの確認2)本番で使うDBについて3)phpMyAdminでDB作成4)機能要件の理解 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  13. 13. ◆1)流れの確認1-1.今日の流れ1)流れの確認2)本番で使うDBについて3)phpMyAdminでDB作成4)機能要件の理解5)実装のコツとサンプル AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  14. 14. ◆1)流れの確認1-1.今日の流れ1)流れの確認 イマココ!2)本番で使うDBについて3)phpMyAdminでDB作成4)機能要件の理解5)実装のコツとサンプル AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  15. 15. ◆1)流れの確認1-2.本番までの流れ(PHP対策的に) AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  16. 16. ◆1)流れの確認1-2.本番までの流れ(PHP対策的に)1)機能と実装方法確認 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  17. 17. ◆1)流れの確認1-2.本番までの流れ(PHP対策的に)1)機能と実装方法確認2)とにかく一回作ってみる AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  18. 18. ◆1)流れの確認1-2.本番までの流れ(PHP対策的に)1)機能と実装方法確認2)とにかく一回作ってみる3)フィードバック AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  19. 19. ◆1)流れの確認1-2.本番までの流れ(PHP対策的に)1)機能と実装方法確認2)とにかく一回作ってみる3)フィードバック4)作るものを大体決める AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  20. 20. ◆1)流れの確認1-2.本番までの流れ(PHP対策的に)1)機能と実装方法確認2)とにかく一回作ってみる3)フィードバック4)作るものを大体決める5)制限時間内に作る練習 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  21. 21. ◆1)流れの確認1-2.本番までの流れ(PHP対策的に)1)機能と実装方法確認 イマココ!2)とにかく一回作ってみる3)フィードバック4)作るものを大体決める5)制限時間内に作る練習 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  22. 22. ◆1)流れの確認1-2.本番までの流れ(PHP対策的に)1)機能と実装方法確認2)とにかく一回作ってみる3)フィードバック4)作るものを大体決める5)制限時間内に作る練習 重要!! AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  23. 23. ◆1)流れの確認1-3.本番での流れ(金メダル的な意味で) AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  24. 24. ◆1)流れの確認1-3.本番での流れ(金メダル的な意味で) 「30%の変更」に対応する! 「変更部分はどこなのか」が 分かっていれば大丈夫です。 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  25. 25. ◆1)流れの確認1-3.本番での流れ(金メダル的な意味で) 「30%の変更」に対応する! 「変更部分はどこなのか」が 分かっていれば大丈夫です。 制限時間内に作る練習 で得た自分パターンを 落ち着いて実行!!! phpMyAdmin は友達です。 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  26. 26. ◆1)流れの確認1-3.本番での流れ(金メダル的な意味で) 「30%の変更」に対応する! 今日から本番まで、 「変更部分はどこなのか」が 作るものも重視する点も メンバーそれぞれで 分かっていれば大丈夫です。 状況が違ってきます。 もうセミナーの日とか 制限時間内に作る練習 気にせず、 で得た自分パターンを 落ち着いて実行!!! いつでもいいから phpMyAdmin は友達です。 781または792へどうぞ!! AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  27. 27. ◆1)流れの確認1-1.今日の流れ1)流れの確認2)本番で使うDBについて 次ココ。3)phpMyAdminでDB作成4)機能要件の理解5)実装のコツとサンプル AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  28. 28. ◆2)本番で使うDBについて2-1.ちょっとした訂正とお詫び AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  29. 29. ◆2)本番で使うDBについて2-1.ちょっとした訂正とお詫びさて、これまでのPHPセミナーにおいて、 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  30. 30. ◆2)本番で使うDBについて2-1.ちょっとした訂正とお詫びさて、これまでのPHPセミナーにおいて、「データベースは大会側が用意しますから!」とご案内してきましたが、 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  31. 31. ◆2)本番で使うDBについて2-1.ちょっとした訂正とお詫びさて、これまでのPHPセミナーにおいて、「データベースは大会側が用意しますから!」とご案内してきましたが、どうやらデータベース自体も競技者が作る必要があるみたいです。 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  32. 32. ◆2)本番で使うDBについて2-1.ちょっとした訂正とお詫びさて、これまでのPHPセミナーにおいて、「データベースは大会側が用意しますから!」とご案内してきましたが、どうやらデータベース自体も競技者が作る必要があるみたいです。謹んでお詫び申し上げます。 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  33. 33. ◆2)本番で使うDBについて2-1.ちょっとした訂正とお詫びさて、これまでのPHPセミナーにおいて、「データベースは大会側が用意しますから!」とご案内してきましたが、どうやらデータベース自体も競技者が作る必要があるみたいです。謹んでお詫び申し上げます。2009年9月28日 (月) AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  34. 34. ◆2)本番で使うDBについて2-1.ちょっとした訂正とお詫びさて、これまでのPHPセミナーにおいて、「データベースは大会側が用意しますから!」とご案内してきましたが、どうやらデータベース自体も競技者が作る必要があるみたいです。謹んでお詫び申し上げます。2009年9月28日 (月)技能五輪プロジェクト代表 江川 貴仁 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  35. 35. ◆2)本番で使うDBについて2-2.テーブル設計しました。(日本語の設計図) AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  36. 36. ◆2)本番で使うDBについて2-2.テーブル設計しました。(実際にDBで使う設計図) AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  37. 37. ◆2)本番で使うDBについて2-2.テーブル設計しました。(テーブル情報一覧表) AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  38. 38. ◆3)phpMyAdminでDB作成3-1.DB作成の手順 ・DBの作成(不要かも?) AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  39. 39. ◆3)phpMyAdminでDB作成3-1.DB作成の手順 ・DBの作成(不要かも?) ・テーブルの作成 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  40. 40. ◆3)phpMyAdminでDB作成3-1.DB作成の手順 ・DBの作成(不要かも?) ・テーブルの作成 ・管理者、専門分野、講師の初期値入力 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  41. 41. ◆3)phpMyAdminでDB作成3-1.DB作成の手順 ・DBの作成(不要かも?) ・テーブルの作成 ・管理者、専門分野、講師の初期値入力 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  42. 42. ◆3)phpMyAdminでDB作成3-2.DBの作成(不要かも?) AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  43. 43. ◆3)phpMyAdminでDB作成3-2.DBの作成(不要かも?) データベース名:指示に従う    文字セット :utf8_general_ci AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  44. 44. ◆3)phpMyAdminでDB作成3-2.DBの作成(不要かも?) これでDB作成完了。 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  45. 45. ◆3)phpMyAdminでDB作成3-3.テーブルの作成 ・DBの作成(不要かも?) ・テーブルの作成(一番大事!!) ・管理者、専門分野、講師の初期値入力 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  46. 46. ◆3)phpMyAdminでDB作成3-3.テーブルの作成(一番大事!!) AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  47. 47. ◆3)phpMyAdminでDB作成3-3.テーブルの作成(一番大事!!) 目当てのDBが選択されて いることを確認する AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  48. 48. ◆3)phpMyAdminでDB作成3-3.テーブルの作成(一番大事!!) AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  49. 49. ◆3)phpMyAdminでDB作成3-3.テーブルの作成(一番大事!!) テーブル名と、そのテーブルの列数を 入力し、「実行する」をクリック。 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  50. 50. ◆3)phpMyAdminでDB作成3-3.テーブルの作成(一番大事!!) ・列名=フィールド ・データ型=種別、 (CHARまたはVARCHARの  場合は長さ/値の 欄に桁数を入力) ・必須?=ヌル(NULL) ・主key?=PRIMARY ・ユニーク?=UNIQUE 照合順序は utf8_general_ciを選択し 「保存する」クリック AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  51. 51. ◆3)phpMyAdminでDB作成3-3.テーブルの作成(一番大事!!) これで一つのテーブル作成完了! AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  52. 52. ◆3)phpMyAdminでDB作成3-3.テーブルの作成(一番大事!!) これらのテーブルをどんどん作る。 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  53. 53. ◆3)phpMyAdminでDB作成3-3.テーブルの作成(一番大事!!)残りのテーブルもphpMyAdminで作ってみてください。 講師用チートスクリプト CREATE TABLE kaiin ( kai_no INT NOT NULL, kai_mail VARCHAR(60) UNIQUE NOT NULL, kai_pw TEXT NOT NULL, kai_name TEXT NOT NULL, kai_name_kana TEXT NOT NULL, kai_tel CHAR(10) NOT NULL, kai_fax CHAR(10), kai_keitai CHAR(11), kai_yuubin CHAR(7), kai_todoufuken TEXT NOT NULL, kai_juusyo TEXT NOT NULL ALTER TABLE koushi ADD CONSTRAINT PK_koushi PRIMARY KEY (kou_no); ); ALTER TABLE kaiin ADD CONSTRAINT PK_kaiin PRIMARY KEY (kai_no); CREATE TABLE seminar ( sem_no INT NOT NULL, kou_no INT, CREATE TABLE category ( cat_no INT, cat_no INT NOT NULL, sem_date DATE NOT NULL, cat_name VARCHAR(30) sem_place TEXT NOT NULL, ); sem_summery TEXT NOT NULL, sem_detail TEXT NOT NULL, ALTER TABLE category ADD CONSTRAINT PK_category PRIMARY KEY (cat_no); sem_comment TEXT ); CREATE TABLE kanrisya ( ALTER TABLE seminar ADD CONSTRAINT PK_seminar PRIMARY KEY (sem_no); kan_id VARCHAR(20) NOT NULL, kan_pw TEXT NOT NULL ); CREATE TABLE sankasya ( sem_no INT NOT NULL, ALTER TABLE kanrisya ADD CONSTRAINT PK_kanrisya PRIMARY KEY (kan_id); kai_no INT NOT NULL, san_ip TEXT NOT NULL ); CREATE TABLE koushi ( kou_no INT NOT NULL, ALTER TABLE sankasya ADD CONSTRAINT PK_sankasya PRIMARY KEY (sem_no,kai_no); kou_mail VARCHAR(60) UNIQUE NOT NULL, kou_pw TEXT NOT NULL, kou_name TEXT NOT NULL, ALTER TABLE seminar ADD CONSTRAINT FK_seminar_0 FOREIGN KEY (kou_no) REFERENCES koushi (kou_no); kou_name_kana TEXT NOT NULL, ALTER TABLE seminar ADD CONSTRAINT FK_seminar_1 FOREIGN KEY (cat_no) REFERENCES category (cat_no); kou_birthday DATE, kou_zayu TEXT, kou_pic_filename TEXT ALTER TABLE sankasya ADD CONSTRAINT FK_sankasya_0 FOREIGN KEY (sem_no) REFERENCES seminar (sem_no); ); ALTER TABLE sankasya ADD CONSTRAINT FK_sankasya_1 FOREIGN KEY (kai_no) REFERENCES kaiin (kai_no); AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  54. 54. ◆3)phpMyAdminでDB作成3-3.テーブルの作成(一番大事!!) こうなっていれば テーブル作成完了です。 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  55. 55. ◆3)phpMyAdminでDB作成3-4.管理者、専門分野、講師の初期値入力 ・DBの作成(不要かも?) ・テーブルの作成 ・管理者、専門分野、講師の初期値入力 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  56. 56. ◆3)phpMyAdminでDB作成3-4.管理者、専門分野、講師の初期値入力 課題PDFを見ると、 「管理者」 「専門分野」 「講師」 の情報は既に与えられたものを 使えるようです。 順番に確認し、phpMyAdminで 入力していきましょう。 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  57. 57. ◆3)phpMyAdminでDB作成3-4.管理者、専門分野、講師の初期値入力 ◆管理者の情報   AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  58. 58. ◆3)phpMyAdminでDB作成3-4.管理者、専門分野、講師の初期値入力 ◆管理者の情報 p.6/14 「10.管理モジュール」 (b) 管理者は以下のユーザネーム/   パスワードでログインできる   login: admin   password: 3@mA?eZsh AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  59. 59. ◆3)phpMyAdminでDB作成3-4.管理者、専門分野、講師の初期値入力 ◆管理者の情報 p.6/14 「10.管理モジュール」 (b) 管理者は以下のユーザネーム/   パスワードでログインできる   login: admin   password: 3@mA?eZsh これをkanrisyaテーブルに入れておく。 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  60. 60. ◆3)phpMyAdminでDB作成3-4.管理者、専門分野、講師の初期値入力 ◆管理者の情報 パスワードは、SHA1関数を使って暗号化 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  61. 61. ◆3)phpMyAdminでDB作成3-4.管理者、専門分野、講師の初期値入力 ◆専門分野の情報   ◆講師の情報   AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  62. 62. ◆3)phpMyAdminでDB作成3-4.管理者、専門分野、講師の初期値入力 ◆専門分野の情報 /* 初期値入力 講師用チート スクリプト */ p.14/14 「付録D 専門分野」 INSERT INTO `kanrisya` (   `kan_id` , `kan_pw` ) VALUES ( admin, SHA1( 3@mA?  1.印刷 2.写真 3.DTP 4.ウェブデザイン eZsh ) ); INSERT INTO `category` VALUES ( 1,印刷 ), ( ◆講師の情報 2,写真 ), ( 3,DTP ), ( 4,ウェブデザイン ); p.5/14 「付録D 専門分野」 INSERT INTO `koushi` (    4.講師の情報 [付録Bを参照] `kou_no` , `kou_mail` , `kou_pw` , `kou_name` , `kou_name_kana` , `kou_birthday` ,   これは別途用意去れているデータを `kou_zayu` , `kou_pic_filename` )   用いることができる。 VALUES ( 1,koushi1@example.co m, SHA1( pass ) , koushinamae1, koushinamaekana1,それぞれ、phpMyAdminで 2009-09-15, NULL , NULL );データをいれてみてください。 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  63. 63. ◆3)phpMyAdminでDB作成3-4.管理者、専門分野、講師の初期値入力◆DB作成についてまとめ ・本番では、  テーブル作成を一人で、  資料なしでやらなきゃ! ・テーブルの情報を覚えておこう。  覚えなくても済むくらい  理解してもOK。 ・phpMyAdminの操作に  慣れておこう。 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  64. 64. ◆1)流れの確認1-1.今日の流れ1)流れの確認2)本番で使うDBについて3)phpMyAdminでDB作成4)機能要件の理解 次ココ。5)実装のコツとサンプル AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  65. 65. ◆4)機能要件の理解4-1.What と How ◆システムを作るとき重要なのは AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  66. 66. ◆4)機能要件の理解4-1.What と How ◆システムを作るとき重要なのは ・何を作るか(what) ・どう作るか(how)   を考えておくことです。 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  67. 67. ◆4)機能要件の理解4-1.What と How ◆何を作るか(what) ・=仕様書の内容 ・つまり全員共通 ・作り始める前に  しっかり理解 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  68. 68. ◆4)機能要件の理解4-1.What と How ◆どう作るか(how) ・デザイン、ロジック ・人によって違う ・作り始める前に  考えておく AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  69. 69. ◆4)機能要件の理解4-2.What をざっくり見てみよう! ◆仕様書(課題)を分析してみる AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  70. 70. ◆4)機能要件の理解4-2.What をざっくり見てみよう! ◆仕様書(課題)を分析してみる セミナーナビ 講師を 登録・編集・削除する ログイン/ログアウト する パスワードリマインダ!管理者 自分のパスワードを 変更する 参加希望者を 検索する 会員登録する 参加 希望者講師 セミナーを登録する セミナーを検索する セミナー一覧を見る セミナーに 参加登録する 参加希望者一覧を見る 希望者データを CSVでダウンロードする AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  71. 71. ◆4)機能要件の理解4-2.What をざっくり見てみよう! ◆仕様書(課題)を分析してみる セミナーナビ 講師を 登録・編集・削除する ログイン/ログアウト する この図がちゃんと パスワードリマインダ!管理者 自分のパスワードを 変更する 頭の中に入っていれば、 参加希望者を 検索する 会員登録する 参加講師 30%の変更に セミナーを登録する セミナーを検索する 希望者 対応しやすいです。 セミナー一覧を見る セミナーに 参加登録する 参加希望者一覧を見る 希望者データを CSVでダウンロードする AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  72. 72. ◆4)機能要件の理解4-3.What を細かく見てみよう! 随時更新中、下記の 資料(公開Googleドキュメント)参照で お願いします。。。 http://bit.ly/gorinphp AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  73. 73. ◆1)流れの確認1-1.今日の流れ1)流れの確認2)本番で使うDBについて3)phpMyAdminでDB作成4)機能要件の理解5)実装のコツとサンプル イマココ! AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  74. 74. ◆5)実装のコツとサンプル5-1.ノウハウ伝授の流れ AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  75. 75. ◆5)実装のコツとサンプル5-1.ノウハウ伝授の流れ一つのCSSファイルを複数のhtmlから参照するようなもんです。・同じ処理は「まとめる」 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  76. 76. ◆5)実装のコツとサンプル5-1.ノウハウ伝授の流れまとめる処理は大体決まっています。DB周りとかDB周りとかDB周りとか。・同じ処理は「まとめる」・「同じ処理」を見つけよう! AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  77. 77. ◆5)実装のコツとサンプル5-1.ノウハウ伝授の流れ実際にそのまま使うこともできるサンプルコードで動きを確認します。・同じ処理は「まとめる」・「同じ処理」を見つけよう!・サンプルコード確認 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  78. 78. ◆5)実装のコツとサンプル5-1.ノウハウ伝授の流れ実際にそのまま使うこともできるサンプルコードで動きを確認します。・同じ処理は「まとめる」 イマココ!・「同じ処理」を見つけよう!・サンプルコード確認 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  79. 79. ◆5)実装のコツとサンプル5-2.同じ処理は「まとめる」◆「まとめる」の考え方<?php <?php ~~~  ~~~ 処理1  処理2 ~~~  ~~~  処理3 ~~~  ~~~ 処理2  処理3 ~~~  ~~~?> ?>sample1.php sample2.php AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  80. 80. ◆5)実装のコツとサンプル5-2.同じ処理は「まとめる」◆「まとめる」の考え方<?php <?php ~~~  ~~~ 処理1  処理2 ~~~  ~~~  処理3 ~~~  ~~~ 処理2  処理3 ~~~  ~~~?> ?>sample1.php sample2.php AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  81. 81. ◆5)実装のコツとサンプル5-2.同じ処理は「まとめる」◆「まとめる」の考え方 <?php <?php <?php  ~~~  ~~~  処理1  処理2 function syori() {  ~~~  ~~~  ~~~  処理3  処理2  ~~~  ~~~  ~~~  処理2  処理3 }  ~~~  ~~~ ?> ?> ?>sample1.php sample2.php matome.php AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  82. 82. ◆5)実装のコツとサンプル5-2.同じ処理は「まとめる」◆「まとめる」の考え方 <?php <?php <?php  ~~~  処理1 syori2(); function syori2() {  ~~~  ~~~  ~~~  処理3  処理2  ~~~  ~~~ syori2();  処理3 }  ~~~ ?> ?> ?>sample1.php sample2.php matome.php AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  83. 83. ◆5)実装のコツとサンプル5-2.同じ処理は「まとめる」◆「まとめる」の考え方 <?php <?php <?php function syori2() {  ~~~  ~~~ syori2();  処理2  処理1  ~~~  ~~~ } syori3(); function syori3() { syori2(); syori3();  ~~~  処理3 ?> ?>  ~~~ } ?>sample1.php sample2.php matome.php AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  84. 84. ◆5)実装のコツとサンプル5-2.同じ処理は「まとめる」◆「まとめる」の考え方 <?php function syori2() {<?php  ~~~  処理2 include(“matome.php”);  ~~~ } syori2(); function syori3() { syori3();  ~~~ syori3();  処理3  ~~~?> } ?>sample2.php matome.php AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  85. 85. ◆5)実装のコツとサンプル5-2.同じ処理は「まとめる」◆ include()文の使い方 <?php function syori2() {<?php  ~~~  処理2 include(“matome.php”);  ~~~ } syori2(); function syori3() { include() 文は、別ファイルの  ~~~ syori3();ソースコード(php, html)を全て 処理3 syori3();読み込んでくれます。  ~~~?> } ?>sample1.php matome.php AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  86. 86. ◆5)実装のコツとサンプル5-2.同じ処理は「まとめる」◆関数の作り方、使い方<?php ・「関数」を自分で作るfunction syori2() { ~~~ <?php 処理2 ~~~ function 関数名(引数) {} /*function syori3() { * 好きなように ~~~ * 処理を書く 処理3 ~~~ */} }?> ?>matome.php AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  87. 87. ◆5)実装のコツとサンプル5-2.同じ処理は「まとめる」 ◆関数の作り方、使い方・「関数」を自分で作る function  …キーワードです。絶対必要。<?php 関数名function 関数名(引数) {  …好きな名前でどうぞ。英語で /*   動詞+名詞にすることが多い。 * 好きなように   connectDBとか。 * 処理を書く */ 引数 return ほげほげ;  …関数を使うときに、値を受け取る}   ことが出来ます。受け取った値は   関数内で使えます。変数と同様に、?> 関数名($hikisu)と書きます。   引数は無くてもOKです。 return  …関数を呼び出した元に、好きな値を   返すことが出来ます。   返さなくても(省略しても)OK。 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  88. 88. ◆5)実装のコツとサンプル5-2.同じ処理は「まとめる」◆5-2.同じ処理は「まとめる」・複数の場所で同じ処理をするコード を見つける。・そういうコードを、別のファイルに まとめて書いておく。 (=関数にしておく)・そのコードを使いたいときは、 include(“ファイル名”); と書いてから、関数名を書く。 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  89. 89. ◆5)実装のコツとサンプル5-1.ノウハウ伝授の流れ実際にそのまま使うこともできるサンプルコードで動きを確認します。・同じ処理は「まとめる」・「同じ処理」を見つけよう! イマココ!・サンプルコード確認 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  90. 90. ◆5)実装のコツとサンプル5-3.「同じ処理」を見つけよう◆うまくやると効率うp&時間短縮!!・エスケープ処理関係の関数を短く (mysql_real_escape_string()や  htmlspecialchars()など)・DBへの接続、SQLの実行、結果の取得 あたりは関数化の定番・その他、メール送信処理などを 関数としてまとめておいてもよいかも AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  91. 91. ◆5)実装のコツとサンプル5-3.「同じ処理」を見つけよう◆エスケープ処理関係・esc.phpというファイルに、次の関数をまとめてみよう1)文字列$strを渡すとhtmlspecialchars(trim($str))  の結果の文字列を返すh($str)関数2)文字列$sqlを渡すと  mysql_real_replace_string(trim($str))  の結果の文字列を返すm($str)関数 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  92. 92. ◆5)実装のコツとサンプル 5-3.「同じ処理」を見つけよう esc.phpのサンプル<?phpfunction h($str) { return htmlspecialchars(trim($str));}function m($sql) { return mysql_real_replace_string(trim($sql));}?> AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  93. 93. ◆5)実装のコツとサンプル5-3.「同じ処理」を見つけよう◆DBへの接続、SQLの実行、結果の取得・db.phpというファイルに、次の関数をまとめてみよう1)SQL文を引数として渡すと、MySQLへの接続を  確立してからSELECT/INSERT/UPDATE/DELETE文を  実行し、MySQLへの接続を閉じてから結果を  返すexecSQL($sql)関数2)MySQLへ接続し、文字セットをutf8に設定してから  接続オブジェクトを返すconnectDB()関数 AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  94. 94. ◆5)実装のコツとサンプル5-3.「同じ処理」を見つけよう db.phpのサンプル<?phpinclude("esc.php");function connectDB() { $host = "サーバのhost名またはIPアドレス"; $user = "MySQLユーザ名"; $pass = "そのパスワード"; $db = "データベース名"; $conn = mysqli_connect( $host, $user, $pass, $db ); mysqli_query($conn, "SET NAMES utf8"); return $conn;}function execSQL($sql) { $conn = connectDB(); $result = mysqli_query($conn, m($sql)); mysqli_close($conn); return $result;}?> AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  95. 95. ◆1)流れの確認1-1.今日の流れ1)流れの確認2)本番で使うDBについて3)phpMyAdminでDB作成4)機能要件の理解5)実装のコツとサンプル イマココ! AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 
  96. 96. AW技能五輪 第4回 PHPセミナー 必要な機能と実現方法 を確認しようの回 お疲れ様でした! 資料作成・サポート:電設部技能五輪プロジェクト AW技能五輪 第一回 PHPセミナー (c) 2009 Akihiro Tsukada, JO-GORIN-PJT. 

×