我想通过输入ID的随机数来搜索表,并且为了成功,它必须匹配指定的标记。到目前为止,我有:
$query = "SELECT * FROM web_db WHERE P_Id = " . $random;
$result = mysql_query($query);
if($result) {
while($row = mysql_fetch_array($result)){
$name = $row[$id];
echo 'ID:' . $name . '<br>';
$name = $row[$url];
echo 'URL: ' . $name . '<br>';
$name = $row[$tag];
echo 'Tag:' . $name . '<p>';
}
}
这会显示一个条目,任何标记。在Tag与指定值匹配之前,如何重复它?
答案 0 :(得分:3)
你没有。 SELECT
语句返回符合以下条件的所有内容。因此,如果要查询特定标记条目而忽略P_Id
,请执行以下操作:
$query = "SELECT * FROM web_db WHERE tag = '".$tag."' ORDER BY RAND() LIMIT 1";
在这种情况下, RAND()
会随机排序列表,而查询会返回与使用的标记匹配的第一个结果。
$result = mysql_query($query);
if(count($result) > 0) {
while($row = mysql_fetch_array($result)) {
echo 'ID:' . $row['id'] . '<br>';
echo 'URL: ' . $row['url'] . '<br>';
echo 'Tag:' . $row['tag'] . '<p>';
}
} else {
echo 'no entries found';
}
答案 1 :(得分:0)
if("sometag" === $name) break;
退出while循环。退出后,您应该再次检查是否找到了标签