2016-11-26 3 views
0

PHP + MySQLを使用してWeb-appを使用したいと思います。質問を追加するか、質問にコメントを追加します(ログインしていない未登録のユーザーは質問とその回答のみを読むことができます)。PHP + MySQLを使用すると、登録されているユーザは、ログインした他のユーザがコメントできるテキストを追加できます

主な問題は、PHP + MySQLで正しいストレート質問にどのように表現するかです。 (1つの質問にすべてではなく、正しい質問に直接)

この問題を解決するためのすべての可能性をありがとうございます。

+0

あなたの質問はありませんが、これはあなたがするかもしれないと思います。idを主キーとして 'コメント'テーブルを作成してから、ユーザーが挿入したテキストをキャプチャするテキストフィールドを追加し、コメントテーブルをいくつかのテーブル(外部キー)にリンクする別のフィールドが必要です。さらに、コメントを入力したユーザーを格納するフィールドが必要な場合、このフィールドはユーザーの電子メールになります。その後、GETまたはPOSTでユーザの電子メールとコメントを取得し、DBにすべてを挿入します: –

+0

セッションを使用してログインユーザのユーザ名を保存し、mysqlテーブルに質問を投稿したユーザのユーザ名も保存します質問書作成者のユーザー名==ログインしているユーザー名がある場合にのみ、編集ボタンを表示するようにしてください。 –

答えて

0

これは単純なデータベース設計の質問のようです。

ユーザー、質問、コメントの3つのテーブルが記述されています。 コメントテーブルにはQuestionIDの外部キーがあり、コメントが投稿された質問です。 PosterIDの外部キーもあります。これは、コメントを投稿したユーザーのIDです。 特定の質問に関連するコメントを表示するには、質問IDでそれらを取得します。ここで

は、特定の質問に対するコメントを取得するためにPHPのサンプルSQLクエリです:

$questionId = 5; 
$query = "SELECT * 
FROM comments 
WHERE question_id={$questionId}"; 
$result = mysqli_query($conn, $query); 

私も(私が与えてくれたサンプルは、単純な使用するSQLインジェクションについて学習し、好ましくは、クエリを構築するためにPDO prepared statementsを使用することをお勧めmysqli)。

+0

"ユーザーが質問を書き、別のユーザーがそれをコメントすることができ、質問とコメントはログインした登録ユーザーによって行われます。まあ、それはちょうど正しいソリューションかもしれません(データベース論理私は絶対に正しいと思いますが)、どうすれば自分自身を "フェッチ"できますか?コメントが特定の質問に関連していることをどうすれば確実に保証できますか? – Bartolomej

+0

私はあなたのPHPの例を与えるために私の答えを編集しました – Royar

+0

私は試してみて、結果に答える、ありがとう:)。 – Bartolomej

関連する問題