2012-12-11 74 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 

删除此行,这是额外的