ユーザーが他のユーザーのプライベート写真を見るように要求できるサイトがあります。システム全体は、php と mysql を使用してセットアップされます。
基本的な考え方は、あるユーザーが別のユーザーのプライベートな写真コレクションを見るように要求できるというものです。デフォルトでは、データベース内のすべてのユーザーは「o」の列挙値に設定されており、写真を表示するリクエストを送信し、ユーザーがこれを受け入れると、列挙値が 1 に変更され、ユーザーのプライベート写真を見ることができます。
これは正常に機能していますが、次のような3つの列を持つ「権限」というテーブルを作成しました。
user_id | private_id | privilege
2 4 1
5 6 0
上の表からのデモンストレーションによる。ユーザー ID 2 は、ユーザー ID 4 のプライベート写真を見ることができるようになりました。ただし、ユーザー ID 5 はユーザー ID 6 の写真を見ることができません。
私が言ったように、基本的なアイデアは機能しますが、現時点では、ユーザーが許可または列挙値1を持っていない場合、南京錠でテンプレート画像が表示されると想定されています。
現時点では、このテーブルでペアになっているユーザーのみが南京錠イメージ/テンプレート イメージを表示できます。
たとえば、user_id = 2 で private_id = 1 の場合、ユーザー 2 は南京錠/テンプレートの画像を見ることができます。
しかし、列挙値が0の場合、すべてのユーザーが(ログイン時に)南京錠の画像を見ることができるようにしたいので、これは間違っています.
誰かが私が間違っているところを教えてもらえますか? 私は試しましたが、私はそれを理解することはできません。ありがとう。
また、「users」というテーブルがあり、メール、連絡先番号などを含むメインの user_id を保持していることにも言及する必要があると思います。テーブル「permissions」user_id は、権限を管理するための追加のテーブルとしてセットアップされたばかりなので、これは= 'users.user_id' にする必要があるかもしれませんが、まだ mysql を学んでいるので、これについてはよくわかりません。
関数:
function account_perms() {
global $connection;
global $_SESSION;
global $profile_id;
$query = "SELECT ptb_permissions.user_id, ptb_permissions.private_id, ptb_permissions.privellages
FROM ptb_permissions
WHERE ptb_permissions.private_id = \"$profile_id\"
AND ptb_permissions.user_id = ".$_SESSION['user_id']." ";
$account_perms = mysql_query($query, $connection);
confirm_query($query, $connection);
return $account_perms;
}
コード:
<div="tj_gallery">
<? if (logged_in()) { ?>
<?php include('includes/mod_profile/mod_photos/private.php'); ?>
<? } ?>
</div>
プライベート.PHP:
<?php
$photo = "data/private_photos/$profile[1]/pic1.jpg";
if (!file_exists($photo)) {
$photo = "data/photos/0/_default.jpg";
}
$thumb = "data/private_photos/$profile[1]/thumb_pic1.jpg";
if (!file_exists($thumb)) {
$thumb = "data/photos/0/_default.jpg";
}
if (logged_in()) {
echo
"<li><a href=\"$photo\" rel=\"shadowbox\" title=\"<strong>$profile[2]'s Photo's</strong>\"><img src=\"$thumb\" width=\"90\" height=\"90\" alt=\"<strong>{$profile[2]}'s Photos</strong>\" /></a></li>";
}
?>
<? } } ?>
<?
$account_perms = account_perms();
while ($perms = mysql_fetch_array($account_perms)) {
if ($perms['privellages'] == '0') {
$photo = "data/private_photos/0/_default.jpg";
if (!file_exists($photo)) {
$photo = "data/photos/0/_default.jpg";
}
$thumb = "data/private_photos/0/_default.jpg";
if (!file_exists($thumb)) {
$thumb = "data/photos/0/_default.jpg";
}
if (logged_in()) {
echo
"<li><a href=\"privileges.php\" rel=\"shadowbox;height=300;width=500\" title=\"<strong>Access Denied</strong>\"><img src=\"$thumb\" width=\"90\" height=\"90\" alt=\"<strong>{$profile[2]}'s Photos</strong>\" /></a></li>";
}
?>
<? } } ?>