2013-03-24 103 views
-2

我希望能夠通過點擊標題來排序表。我在網上找到了一些關於如何做到這一點的例子,但是當我嘗試關注它們時,我得到了錯誤。任何幫助將不勝感激。這裏是我用來從MySQL創建表的PHP代碼。按標題排序表

<?php 
session_start(); 
$Town = $_POST['Town']; 
$Range = $_POST['Range']; 
$Section = $_POST['Section']; 

$con = mysql_connect('server, 'database', 'password'); 
if (!$con) 
    { 
    die('Could not connect: ' . mysql_error()); 
    } 

mysql_select_db("ncwrpc", $con); 

$sql = "SELECT * FROM `index8` WHERE `MAPID` = $Town$Range$Section LIMIT 0, 500 "; 

$result = mysql_query($sql); 
echo "<table border='2' cellpadding='5' cellspacing='2' bordercolor='#000000' bgcolor='#B8B8B8' > 
<tr> 

<h2>TOWN: $Town N - RANGE: $Range E - SECTION: $Section</h2> 
<th bgcolor=\"#669999\">MAP</th> 
<th bgcolor=\"#669999\">DESC. 1</th> 
<th bgcolor=\"#669999\">DESC. 2</th> 
<th bgcolor=\"#669999\">REMARKS</th> 
<th bgcolor=\"#669999\">SURVEYOR</th> 
<th bgcolor=\"#669999\">CLIENT</th> 
<th bgcolor=\"#669999\">YEAR</th> 
</tr>"; 

$color = "0"; 
while($row = mysql_fetch_array($result)) 
{ 
    if($color == "0"){ 
     echo "<tr>"; 
     echo "<td bgcolor=\"#FFFFFF\"><a href=\"".$row['LINK']."\" target=\"_blank\">".$row['MAP1']."</a></td>"; 
     echo "<td bgcolor=\"#FFFFFF\">" . $row['Desc1'] . "</td>"; 
     echo "<td bgcolor=\"#FFFFFF\">" . $row['Desc2'] . "</td>"; 
     echo "<td bgcolor=\"#FFFFFF\">" . $row['Remarks'] . "</td>"; 
     echo "<td bgcolor=\"#FFFFFF\">" . $row['Surveyor'] . "</td>"; 
     echo "<td bgcolor=\"#FFFFFF\">" . $row['Client'] . "</td>"; 
     echo "<td bgcolor=\"#FFFFFF\">" . $row['Y'] . "</td>"; 
     echo "</tr>"; 
     $color = "1"; 
    }else{ 
     echo "<tr>"; 
     echo "<td bgcolor=\"#FFF380\"><a href=\"".$row['LINK']."\" target=\"_blank\">".$row['MAP1']."</a></td>"; 
     echo "<td bgcolor=\"#FFF380\">" . $row['Desc1'] . "</td>"; 
     echo "<td bgcolor=\"#FFF380\">" . $row['Desc2'] . "</td>"; 
     echo "<td bgcolor=\"#FFF380\">" . $row['Remarks'] . "</td>"; 
     echo "<td bgcolor=\"#FFF380\">" . $row['Surveyor'] . "</td>"; 
     echo "<td bgcolor=\"#FFF380\">" . $row['Client'] . "</td>"; 
     echo "<td bgcolor=\"#FFF380\">" . $row['Y'] . "</td>"; 
     echo "</tr>"; 
     $color = "0"; 
    } 
} 


?> 
+0

當你寫「我有錯誤「,你應該說他們在哪裏以及哪些錯誤。不要說「第5行」,因爲我們不知道哪一行是行號。 5. – Voitcus 2013-03-24 13:52:31

+0

這裏缺少一個撇號'$ con = mysql_connect('server,'database','password');' – Voitcus 2013-03-24 13:53:25

+0

上面沒有任何錯誤可以正常工作。只是想添加排序。是的,上面提到的mysql _connect存在錯誤,我只是從這篇文章中刪除了服務器名稱等。我將按照下面的建議查看jquery。 – user2204589 2013-03-24 17:21:49

回答

1
你可能想看看jQuery的數據表( http://www.datatables.net/

做這個工作,更適合你的開箱。

如果你真的想在mysql中解決它,只需在你的SQL查詢中添加一個SORT BY field(其中field是你想要排序的字段的佔位符)。那麼你可以在html代碼中將這個字段添加到你的排序鏈接中。

1

你可以操縱HTML,使用jQuery通過簡單的對數據進行排序,有免費的插件,像這樣this一個plenity很多simplier,速度更快,成本更低的請求到服務器