これが機能しない理由がわからないので、これについて助けが必要です。
テーブル内のすべての項目を選択する mysql クエリがありますptb_reviews
。ptb_profiles
ptb_reviews.from_user_id
と等しいように設定したので、inと等しいinptb_profiles.user_id
をエコーアウトしたいと考えています。display_name
user_id
ptb_profiles
from_user_id
ptb_reviews
ただし、 は表示されません。それが機能する唯一の方法は、名前ではなくユーザー番号を表示display_name
する をエコーアウトすることです。from_user_id
私ptb_reviews
のテーブルは次のようになります。
id | from_user_id | to_user_id | content |
1 2 5 hello
2 5 6 hi
3 -1 6 hello
私の「ptb_profiles」テーブルは次のようになります。
id | user_id | display_name |
1 2 jack
2 5 lisa
これが私のmysqlクエリです:
function get_reviews() {
global $connection;
global $profile_id;
$query = "SELECT *
FROM ptb_reviews, ptb_profiles
WHERE ptb_reviews.to_user_id = \"$profile_id\"
AND ptb_reviews.deleted ='0'
AND ptb_reviews.approved = '1'
AND ptb_reviews.from_user_id = '-1'
OR ptb_reviews.from_user_id = ptb_profiles.user_id
GROUP BY ptb_reviews.content
ORDER BY ptb_reviews.date_added DESC
LIMIT 5";
$reviews_set = mysql_query($query, $connection);
confirm_query($query, $connection);
return $reviews_set;
}
php:
<?php $reviews_set = get_reviews();
if(mysql_num_rows($reviews_set) > 0) {
while ($reviews = mysql_fetch_array($reviews_set)) { ?>
<?php echo "{$reviews['display_name']}"; ?>
どこが悪いのか分からないので誰か教えてください。
ありがとう