1

ボタンを持っているユーザーブロックを作成したい

<a type="button" value="1" name="block" Cursor="pointer" href="blockuser.php?uid='. $data['id'].'">Block</a>

しかし、PHP、Ajax、およびユーザーテーブルまたは別のブロックユーザーテーブルを使用してこれを行うための最善の方法を知りたいと思います。したがって、ブロックをクリックすると、ユーザーIDを使用して値1をデータベースに送信し、スイッチを使用してプロファイル全体を表示できないようにすることができます。その逆も同様です。

次に、ユーザーが希望する場合は、任意の時点でこのユーザーのブロックを解除できるブロックリストの作成に進みます。

プライバシーは必須です!助けてくれてありがとう。

4

3 に答える 3

0

あなたの質問の唯一の本当の質問は、これのために新しいテーブルを作成するかどうかです。残りはあなたが言及したテクノロジーのための非常に単純なタスクのグループだからです。

個人的には、現在のユーザーテーブルに列を追加し、その中にユーザーIDを検索できるユーザーIDのコンマ区切りリストを入力することを選択します。これには、ブロックリストをチェックして2テーブルスキームで表示されたユーザーの情報を取得するために必要な2つのクエリに対して、1つのクエリを実行するだけでよいという利点があります。

ブロックリストにユーザーを追加するのは簡単で(ユーザーIDとおそらくコンマを追加)、ブロックリストからユーザーを削除するには、ブロックリストを分割し、適切なユーザーIDを削除してから、コンマで結合してリストを再構築するだけです。

また、これは、プロファイルを表示するために認証が必要な場合にのみ実装するのに役立ちます。その場合でも、新しいアカウントを作成するだけで、そのようなシステムを回避できます。

于 2012-07-17T02:19:38.783 に答える
0

プロファイル情報(おそらくmembersテーブル?)を格納するデータベースの各行に、ブロックされたメンバーのID番号を格納する「blocked」という行を追加できます。個人的にセミコロンを使用してこれらの番号を区切り、$blocked_ids = explode(";",$blocked)ブロックされた各IDを取得します。そこから、次を使用して、その人がプロファイルからブロックされるかどうかを確認できますif(in_array($user_id,$blocked_ids))。その値が配列にある場合は、プロファイルビューを禁止します。

これがお役に立てば幸いです。ご不明な点がございましたら、以下にコメントしてください。

于 2012-07-17T02:21:09.700 に答える
0

データベースに関する限り、私はおそらくこのようにします-ブロックに固有のテーブルを作成します。2つの重要なフィールドは、ブロッカーのIDとブロックされている人のIDです。これは、1人のユーザーが2人のユーザーをブロックした場合、テーブルに2つのエントリがあることを意味します。配列のように機能する1つのSQLフィールドを作成しようとしないでください。

現在、$_GETパラメーターを使用してPHPステージへの標準リクエストを使用するように設定しています。これには大きな問題はありませんが、ページを更新せずに操作全体を実行したい場合は、Ajaxを使用できます。jQueryの場合:$。get( "remove.php"、{uid: "someID"});

于 2012-07-17T02:21:53.540 に答える