我正在使用PHP为网站创建标记系统。我创建了3个表:一个用于文章(表名:文章,行:id,标题,别名),一个用于标签(名称:tag_content,行:id,名称,链接),另一个用于分配文章标签(名称:tag_art ,rows:id_tag,id_arty;例如:4篇文章,具有不同的id,所有一个id_tag等于2)。所有脚本都已完成,因此我可以添加文章,标签,并将标签分配给文章。我还写了一个脚本来显示结果链接:
$zmienna = "SELECT name, link FROM tag_content";
$result2 = mysql_query($zmienna);
echo $result2;
while($row=mysql_fetch_array($result2)){
echo "<a href='http://www.somelink.xx/tag/".$row['link']."'>".$row['name']."</a><br>";
}
它显示了所有创建的链接(标签)。 1.现在我想不是从数据库中随机取出每个标签并显示它们(所以它应该更自然)。怎么做? 2.点击链接/标签后,我想显示所有具有相同id_tag的文章(分配给一个标签)。怎么做?
请求帮助。如果我没有提供信息(代码等),请告诉我。
答案 0 :(得分:2)
随机查询
SELECT列FROM表 兰德令() 限制4
您可以随意设置限制 2。
while($row=mysql_fetch_array($result2)){
echo "<a href='http://www.somelink.xx/tag.php?tag=".$row['link']."'>".$row['name']."</a><br>";
}
创建tag.php文件:
<?php
if($_GET['tag']){
$qr= sprintf("SELECT articles.id,articles.title FROM articles JOIN tag_art on articles.id=tag_art.id_arty JOIN tag_content on tag_content.id=tag_art.id_tag where tag_content.name='%s'",$_GET['tag']);
$rez= mysql_query($qr);
while($row=mysql_fetch_array($rez)){
echo $row["id"].$row["title"];
}
}
?>
&GT;