はじめに
PHPの基礎の学習知識の定着を兼ねてポートフォリオを作成したのでサービスの概要、使用技術、機能、作成方法、課題を説明します。
目的
PHPを使用したWebサービスをフルスクラッチで開発し、下記の項目について理解を深める。
- セッション
- GET送信とPOST送信
- 条件分岐(if文、switch文)と繰り返し処理(foreach文)などの基本構文
- DB関連(DB接続、SQL文)
- DBデータの編集、画面への出力
使用技術について
- 言語
- PHP
- HTML
- CSS
- Javascript
- DBMS
- MySQL
- フレームワーク
- なし
- サーバー
- Xサーバー
- ローカル環境
- MAMP
ポートフォリオ概要
リストを投稿して、共有するWEBサービス
URL: https://sharelist.dekitablog.com/
テストユーザー
Email: testuser@sample.com
Pass: 123456
ポートフォリオ機能
- ログイン関連
- ユーザー登録
- ログイン
- ログアウト
- 退会
- プロフィール関連
- プロフィール登録
- プロフィール編集
- パスワード関連
- パスワード変更
- パスワードリマインダー
- コンテンツ関連
- コンテンツ登録
- コンテンツ一覧表示
- コンテンツ詳細表示
- コンテンツ検索
- コメント
- お気に入り登録
各機能サンプルGIF
ログイン関連
ユーザー登録 → ログアウト → ログイン → 退会 → ログインNG
バリデーションチェック
空欄チェック → Email形式チェック + 最小文字列チェック → パス一致チェック → 重複チェック
プロフィール関連
名前登録 + プロフィール画像登録 → プロフィール画像変更
作成手順
1.機能の洗い出し
2.ワイヤーフレーム作成
iPadのVectornatorにて各ページワイヤーフレームを作成し、それぞれのページの関係を図にする。
3.テーブル設計
4.DB作成
5.画面モック作成
HTMLとCSSで静的なページを作成
6.各機能実装
PHPで各ページに機能を実装して動的なページを作成
7.各機能のテスト
8.デプロイ
おおまかな流れは上記の通りですが、工程は行ったり来たりして調整してます。
工夫したところ
Gitを使用してのバージョン管理
issueに不具合を挙げる
ブランチを切って修正を行う
課題
レスポンシブ対応
コンテンツ(リスト)数を動的に変更(現在は5個で固定)
コンテンツの編集・削除
カテゴリーの登録、変更、削除
その他
GitHub: https://github.com/xxx-kohe-xxx
ツイッター: https://twitter.com/kohe_dekita