2011-07-28 122 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"]; 
} 

} 

?> 

?>