我有这些表格:
报告:
id, ip_addr, upload_id
上载:
id, userID, name, location, category, private
基本上我正在显示所有上传,我想加入报告表以确定当前用户的ip_address是否报告了上传(我将在查询后比较ip_addr)。我遇到的问题是,同一个上传可以有多个报告,不同的人(不一定是注册用户,这就是我使用ip_addr的原因)。那么我如何设置这个MySQL查询以及如何在循环中执行以下操作..?
PHP :( $ thing将是查询结果)
foreach((array)$things as $files){
if ($files['ip_addr'] == $user_ip_addr) {
// display upload info and an already reported image
} else {
// display upload info with an unreported image
}
}
到目前为止,我有这个,显示所有上传
$query = 'SELECT * FROM upload WHERE private="0" ';
答案 0 :(得分:0)
只有多个标识符。 表结构与此类似:
表'报告'
reported_by = user id
reported_id = upload id
id = primary index
您的查询可能是这样的:
SELECT COUNT(*) as `rows` WHERE reported_id = ? AND reported_by = ?
Et瞧,
<?php
if($rows['rows'] > 0) // they reported it
echo 'Tattle tale.';
else
echo 'Snitches get stitches.';
?>
?是未命名的参数(假设您使用的是mysqli或pdo)