Fippiyのプログラム学習内容アウトプットBlog

日々の学習内容をアウトプットして振り返りを実施する。

Laravel開発、Jsonデータ処理を理解してAPIを扱う【1】新規アプリ作成し、挙動を確認する

WebAPIを利用してアプリ制作の幅を広げていろいろやってみたいので、APIを扱ってみることにしました。

まず、そもそもWebAPIを扱うにあたってJSON形式のデータを扱うことが多いようなので、JSON形式のデータをPHPで扱う方法を学ぶことから始めることにしました。

今回は、作成中アプリではなく、動作確認用に新たなアプリを作成していろいろとやってみました。

  • 今回の目的
    • なぜやるか
    • やりたいこと
    • やったこと
  • 実施内容
    • JSONデータを処理してみる
      • コードを書いて出力するその1
      • コードを書いて出力するその2 
      • JSON形式とPHP配列は異なる
    • WebAPIを扱う
    • openDBを扱う
      • まずはデータを表示させてみる
      • コード上でWebAPIにアクセスし結果を受け取る
      • 任意のISBNコードを指定してデータを取得する 
    • DBに結果を保存する
      • テーブルに1カラムのみを追加して試す
      • DBに必要カラムを全て追加する

今回の目的

  • JSONデータをPHPで扱う方法を知る
  • 本データを簡単に登録する為に、ISBNコードとWebAPIを利用して、データを取得し保存できるようにする

なぜやるか

WebAPIの扱い方を学び、実装まで行うことで、他のWebAPI等も扱える様になるための知識をつける

やりたいこと

PHPJSONデータを扱える様にする

JSONデータを受け取り、必要なデータをDBに保存する

やったこと

テスト用アプリでJSONデータを実際に扱う

書籍を扱うWebAPIを知る

WebAPIを利用してJSONデータを受け取る 

JSONデータから必要な情報をDBに保存する

続きを読む

Laravel開発、ログインページをカスタマイズする

現在作成しているサイトについて、ログイン機能はとりあえずついていますが、LaravelのAuth機能をつけたのみで、デフォルトで表示されるログインページで代用していました。

今回は、きっちりと自分でビューを作成し、新規登録・ログインページを使えるようにしていきます。

  • 今回の目的
    • なぜやるか
    • やりたいこと
    • やったこと
  • 実施内容
    • どこに作成するかを決める
    • ログインページ作成
    • ミドルウェア設定を修正する
    • ルーティング記載方法を考える
    • 使用できるルーティングを確認
    • ログインページ見直し
    • 新規登録フォームを作成
    • 見栄えを変更する
      • デザイン変更
      • リンク変更
      • リダイレクト処理 
    • バリデーション設定

今回の目的

自作のログインページを作成して、ログインできるようにする

なぜやるか

デフォルトのページでログインはできるが、オリジナル作品としてログインページについてもオリジナル化したい

やりたいこと

ビューをオリジナルに変更する

オリジナル化に伴う編集作業について、内容を理解する

やったこと

自作ログインページの作成方法を知る

組み込むページを何処にするか決める

ミドルウェア設定を修正する

ルーティングの書き方を考える

使用できるルーティングを確認する

 

続きを読む

Laravel開発、パンくずリストを利用して現在いるページを分かりやすくする

今まで散々本番環境に載せる為にS3の処理をしていたので、他が止まってしまっています。

今回はまずパンくずリストを実装して、いまどのページにいるのか?が分かりやすいようにしました。

途中で作成サイトの構造に問題があることが分かったため、レイアウトの修正も併せて記載しています。

  • 今回の目的
    • なぜやるか
    • やりたいこと
    • やったこと
  • 実施内容

今回の目的

現在表示のページを分かりやすくする為のリスト表示を追加する

なぜやるか

誰が見てもどのページを表示しているか分かるようにする為

やりたいこと

パンくずリスト利用によるページ位置を表示させる

やったこと

 

続きを読む

Laravel開発、作成したアプリをデプロイして本番環境で動作させる【8】画像編集

デプロイして本番環境でアプリを動作させるシリーズの続きです。

 

S3への画像の追加及び削除の処理までようやく完了したので、最後は編集です。

これが実装できればS3関連の画像処理としては完了となります。

  • 今回の目的
    • なぜやるか
    • やりたいこと
    • やったこと
  • 実施内容
    • データ保存している内容について
    • 画像編集時の処理手順を考える
    • 開発環境の処理修正
    • 本番環境の画像削除処理を実装 
    • 編集時の画像追加処理を実装

今回の目的

本番環境で本データの編集による画像関連処理を行えるようにする

なぜやるか

編集時に適切な処理を入れ、常にデータとして必要な画像のみS3に保存できるようにする為

やりたいこと

画像変更時に旧画像削除+新画像追加をする

画像のみ削除に対応する 

やったこと

データ保存している内容について整理

画像変更作業の処理手順を考える

開発環境の処理修正

本番環境の処理実装

  • 編集時の画像削除処理を実装
  • 編集時の画像追加処理を実装
続きを読む

Laravel開発、作成したアプリをデプロイして本番環境で動作させる【7】画像削除

デプロイして本番環境でアプリを動作させるシリーズの続きです。

 

S3へ画像アップロードする処理が完了したので、次はレコード削除時にS3から画像も削除できるようにします。

削除してないと、どんどんデータだけ蓄積されていくので、使わない物はきっちり削除して容量確保しましょう。

  • 今回の目的
    • なぜやるか
    • やりたいこと
    • やったこと
  • 実施内容
    • 開発環境削除処理を修正
    • S3画像削除処理
    • S3で扱うオブジェクトキーを知る
    • 正規表現で画像URLからキーを取得 
    • 重複コードをまとめる
    • 本番環境で動作確認

今回の目的

S3に追加している画像を削除できるようにしたい

なぜやるか

不要となった画像を削除することで、必要なデータのみをS3で登録管理するため

やりたいこと

レコード削除時にレコードに記載している画像URLを元に画像削除処理を追加する

やったこと

開発環境の画像削除処理を修正

S3アップロード処理を元に削除処理を書いてみる

S3オブジェクトキーを知る

正規表現でURLからキーを取得

重複コードをまとめる

本番環境で動作確認

続きを読む