2012-12-11 78 views
0

我想在HTML表格的標題中出現叮噹響時,從mysql數據庫中排序數據。我寫了這個代碼:按列排序表中的數據

$username = $_SESSION['username']; // gets the username 

echo "<table class='normal_table'>"; 

$new_word = mysql_query("SELECT * FROM new_word WHERE username='$username'"); 
$new_word2 = mysql_query($new_word); 

echo " 

<tr> 
<th><a href='test.php?sort=cz'>Czech:</a></th> 
<th><a href='test.php?sort=en'>English:</a></th> 
<tr>"; 

if ($_GET['sort'] == 'cz') 
{ 
$new_word .= " ORDER BY cz"; 
} 
elseif ($_GET['sort'] == 'en') 
{ 
$new_word .= " ORDER BY en"; 
} 

while($new_word2 = mysql_fetch_array($new_word)){ 

echo " 
<tr> 
<td> ".$new_word2['cz']."</td> 
<td>".$new_word2['en']."</td> 
</tr> 

"; } 

echo "</table>"; 

但在屏幕上沒有出現任何數據任何:(我所做的錯

+1

你查詢你的數據庫,而沒有經過ORDER BY子句查詢說。 –

+0

在運行mysql_query之前,您需要在查詢中追加'$ new word'。 – dognose

回答

2

你是?。在

$new_word = mysql_query("SELECT * FROM new_word WHERE username='$username'"); 

然後試圖澳鵬到該查詢對象執行查詢在

$new_word .= " ORDER BY en"; 

需要構建查詢字符串第一

所以

$sql = "SELECT * FROM new_word WHERE username='$username'" 

追加你ORDER BY

$sql .= " ORDER BY en"; 

然後執行

$new_word = mysql_query($sql); 

編輯:另外除去$new_word2 = mysql_query($new_word);和更改,而使用$new_world作爲烏塔姆噶當派在他們answer

+0

非常感謝! –

1
$new_word2 = mysql_query($new_word); //$new_word wrong 

刪除此行,這是額外的