自分流

なんちゃってエンジニアによる自分用メモ

お題で開発

ツイート詳細・コメント機能の実装【お題で開発:8】

投稿日:2019年11月8日 更新日:

前回ツイート一覧機能を作りました。

今回はツイート詳細・コメント機能を作っていきます。

 

以前作ったツイート機能の実装と同じように作っていきます。

 

 

 

ツイート詳細・コメント機能の実装

ツイート一覧で選択 → 選択したツイートの詳細 → コメントチェック → コメント → ツイート詳細画面に戻る

 

ツイートの詳細画面がコメント入力画面にもなっていて

コメント入力〜登録の流れはツイート投稿機能と同じようになっています。

 

ファイル構成は以下の通り

 

 

ツイート詳細・コメント入力画面

上から順番に見ていきましょう

 

「コメントする」というコメント入力formのボタンが押されているかの判定をして

ボタンが押されている場合(コメント投稿した)は入力値のチェック

 

 

https://localhost:8080/tweet/tweet_disp.php?id=4

のように、一覧からid付きのURLでページが呼び出されるので

idをサニタイズして、そのidをもとにツイートデータを取得します。

 

 

続いてヘッダー、エラー、ツイート、コメント入力を表示します。

 

コメント投稿フォームは、formのactionを自分自身にすることで、同じページで入力のチェックができるようにしています。

エラー判定部分で、エラーがない場合はDBに登録するphpにリダイレクトしています。

307じゃないとpostデータを渡せないんでしたね。

 

 

最後にツイートIDからコメントを取得し、取得したコメントを繰り返し表示しています。

 

 

この辺もいつも通りです。

 

 

コメント登録

コメントをDBに登録する部分です

セッションからユーザーIDを取得して、受け取ったpostデータをサニタイズにして、INSERT文でDBに保存しています。

その後エラーがなければツイート詳細にリダイレクトしています。

通常のリダイレクトなのでpostデータが消えて、無限に登録されるようなことはありませんねw

こっちは簡単でしたね。

 

postしたデータをDBに入れていますが、その前にサニタイズしています。
これどうなんだって議論があると思います。
サニタイズは表示時にのみすればいいだろ!って話です。
これ自分の中できっちりと確立できていないので、追々考えていこうと思っています。

 

 

 

まとめ

登録は何度も作ってきてるので慣れたもんです。

今までの応用でできましたね。

 

で、ですよ

今まではサーバーサイド・バックエンドの話だったのでプログラマしてる自分でもできていましたが、これからちょっとフロント(見た目)側を触っていく必要があります。

本気で触ってこなかった領域なので、お勉強から始めます。

フロントは本気で苦手なですが・・・この際その苦手も乗り越えたいと思います。

 

 

今回の成果

github

 

機能一覧

  • ユーザー登録 済!
  • ログイン 済!
  • プロフィール編集 済!
  • プロフィールに画像投稿 済!
  • 新規つぶやき 済!
  • つぶやきに画像添付 済!
  • 一覧表示 済!
  • つぶやき詳細画面 済!
  • つぶやきへのコメント 済!
  • いいね
  • コメントへのコメント 仕様から削除
  • コメントに画像添付 仕様から削除

 

つづく

 

-お題で開発
-, , , ,


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

まずは設計【お題で開発:1】

お題が決まりました!   何かしらの投稿サービス 期間一ヶ月   と言うわけで作っていくんですが、 いきなりプログラムを書き出すと漂流してしまうので道しるべを書きます。 開発の前段 …

ツイート機能の実装【お題で開発:6】

前回プロフィール編集機能を作りました。 今回は投稿(ツイート)機能を作っていきます。 メインとなる部分ですね。   今までの応用でなんとかなるのですが、せっかくなのでちょっと違うことをしてみ …

プロフィールの編集機能の実装【お題で開発:5】

前回ログイン機能を作りました。 今回はプロフィールの編集機能を作っていきます。 これも基本的な部分ですね。     目次1 プロフィール編集機能に必要な機能1.1 画像のアップロー …

ログイン機能の実装【お題で開発:4】

前回ユーザーの新規登録を作りました。 今回は登録したユーザーでのログインを作ります。     もはやどんなサービスでも存在するログイン機能。 今更説明するまでもない機能ですが、どう …

環境構築【お題で開発:2】

前回設計が終了したので、開発していき・・・たいところですが。 開発環境をきちんと準備しておかないと、のちのち死にます。 昔であれば、XAMPPやLAMPP、MAMPでテスト環境を開発機に直に構築してい …

Top