Skip to content

kanako-kina/tech-aca5

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

テクアカ5期カリキュラム

This is a repository of tech-aca 5th term.


1. 環境構築 Hello World

ディレクトリ名

  • hello_world

基本要件

応用要件

  • ブラウザでhello.php(Hello, World)を表示する

手順

  • 独習PHP P.38, 39を実行

2. 電卓

ディレクトリ名

  • calc

基本要件

  • 四則演算して表示するプログラムをつくる
  • HTMLで入力フォームをつくってPOSTで受け取ったデータを表示するプログラムをつくる

応用要件

  • 四則演算ができる
  • 数字と演算方法(+,-,×,÷)を入力または選択して「計算」などのボタンを押すと結果が表示される
  • 数字と演算方法を入力するページと結果を表示するページは同じにする
  • 使用する言語はPHPとHTML
  • ソースコードには見やすくインデントを付ける
  • Notice, Warning, Fatal Errorをなくす

手順

  1. PHPの演算方法を学習する
  2. HTMLで入力フォームをつくり、表示させる(HTML)
  3. PHPでPOSTしたデータを受け取り、echo や var_dumpする(print_rでも可)
  4. 受け取ったデータをローカル変数に格納
  5. 格納したデータを計算して var_dump する
  6. 計算結果をHTMLで表示する"""

3. 掲示板1

ディレクトリ名

  • board1

基本要件

PHPMyAdmin

  • GUIでDBとテーブルをつくり、データを入れてみる
  • SQLで SELECT / INSERT / UPDATE / DELETE してみる

プログラム(PDO)

  • DB接続する
  • SELECT / INSERT / UPDATE / DELETE する

応用要件

  • 既に投稿された「ユーザ名」と「本文」を表示できる
  • 「ユーザ名」と「本文」を投稿できる
  • データの保存にはデータベースを使う
    • テーブル定義は「掲示板のテーブル定義」シートに従う
    • ただし、型とその他項目は各自考える
  • SQLインジェクション対策ができている(PDOを使用している)
  • XSS対策ができている(htmlspecialcharsを使用している)
  • 使用する言語はPHPとHTML

手順

  1. データベース(以下DB)とは何かを学習する
  2. SQLを学習する
  3. PHPMyAdminでDBとテーブルを作成し、テストデータを入れておく  ※「掲示板のテーブル定義」シートに従う
  4. PHPからDBに接続し、保存されている内容を取得する
  5. PHPを使い、DBに保存されている内容をWebの画面に表示する
  6. PHPでPOSTした内容をDBに保存する
  7. 掲示板として機能させる"

4. 掲示板2

ディレクトリ名

  • board2

基本要件

  • DB関連

    • データベースのリレーションを使う
    • ユーザを管理する仕組みを知る
    • ログインの仕組みを知る
  • Smarty関連

    • Smartyの仕組みを知る
    • Smartyを使って開発する意味を理解する"

応用要件

  • 掲示板2の要件
  • ログインができる
  • ログインすると自分の投稿の編集・削除ができる
  • テーブル定義は「掲示板のテーブル定義」シートに従う
    • ただし、型とその他項目は各自考える
  • HTMLではなくSmartyを使用する
  • 使用する言語はPHPとSmarty(2系)

手順

  1. ユーザの管理(登録・ログイン)機能を実装する ←ここまではHTML+PHP   ※テーブル定義は「掲示板のテーブル定義」シートに従う
  2. ログインしているユーザに紐づく投稿の編集・削除機能を実装する
  3. フレームワーク(Smarty)とは何かを知る(メリット・デメリット) ←ここからSmarty
  4. Smarty+PHPで変数を表示する画面をつくってみて、Smartyの動きを学習する
  5. 今までつくったPHP+HTMLの掲示板の機能をPHP+Smartyでつくる
  6. Smartyを使った掲示板を完成させる"

5. 掲示板3

ディレクトリ名

  • board3

基本要件

  • Linuxを学ぶ
  • GUI(画像/画面)ではなくCUI(コマンド)でPCを操作することを学ぶ
  • Windowsとの違いを知る

応用要件

  • 掲示板2をVagrant(VirtualBox)に移行する

手順

  1. VirtualBox と Vagrant を利用して個人のPC上に Linux のサーバを立てる(ec-cube/README.mdを参照)
  2. 掲示板2で作成したソースコードを 1. で立てたサーバにアップロードし、  しかるべき場所に設置する
  3. ブラウザから 2. で設置したアプリケーションを使えるか確認する

6. EC-CUBE理解

ディレクトリ名

  • ec-cube

基本要件

  • EC-CUBEとは何かを知る
  • オープンソースとは何かを知る

応用要件

  • EC-CUBE2.13.5をインストール
  • 商品登録、会員登録、受注、その他を使ってみる
  • その仕組み(ソースコード)を読み解く

手順

  1. EC-CUBEをインストールする
  • (ec-cube/README.mdを参照)
  • 2回目以降のVagrant起動時にエラーが出る場合は下の解除方法を参考にする
  1. フロント画面・管理画面を触ってみる
  2. ソースコードを読みつつ、EC-CUBEをカスタマイズしてみる

参考

ソースコードの読み方

カスタマイズ例:

Vagrantでの2回目以降の起動時に出るエラーの解除方法

  • Vagrant:1.9.1
  • VirtualBox:5.1.14

Vagrant内

$ sudo yum -y update kernel
$ sudo yum -y install kernel-devel kernel-headers dkms gcc gcc-c++
$ sudo /etc/init.d/vboxadd setup

Vagrant外

vagrant reload

7. 卒業課題

別途案内します

About

This is a repository of tech-aca 5th term.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Ruby 61.8%
  • Shell 38.2%