2011-07-28 85 views
1

我使用PHP为网站创建标签系统。我创建了3个表格:一个用于文章(表名:文章,行:id,标题,别名),一个用于标签(名称:tag_content,行:id,名称,链接) ,行:id_tag,id_arty;例如:4篇文章,具有不同的id,全部用一个id_tag等于2)。所有脚本都已完成,因此我可以添加文章,标签并将标签分配给文章。我也写了一个脚本来显示结果链接:PHP为网站创建标签系统

$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(分配给一个标签)的文章。怎么做?

THX的帮助。如果我没有提供足够的信息(代码等),请告诉我。

+0

看到我更新的答案为2点 –

回答

2
  1. 查询随机

    SELECT列FROM表 ORDER BY RAND() LIMIT 4

你可以设置任何你想要的 2.

while($row=mysql_fetch_array($result2)){ 
    echo "<a href='http://www.somelink.xx/tag.php?tag=".$row['link']."'>".$row['name']."</a><br>"; 
} 
极限

create tag.php file:

<?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"]; 
} 

} 

?> 

?>