2009-07-02 59 views
1

当我运行如下因素代码,我得到这个错误:MySQL的致命错误

致命错误:SQL在/Users/allan/Sites/4is_site/casestudyall.php线105(这是在代码的最后一行。下面

是否与我的查询问题

<?php 
if (isset($_GET['pageno'])) { 
    $pageno = $_GET['pageno']; 
} 
else { 
    $pageno = 1; 
} 

$query = "SELECT count(*) FROM studies ORDER BY (date) desc"; 
$result = mysql_query($query, $connection) or trigger_error("SQL", E_USER_ERROR); 



$query_data = mysql_fetch_row($result); 
$numrows = $query_data[0]; 
$rows_per_page = 4; 
$lastpage  = ceil($numrows/$rows_per_page); 

$pageno = (int)$pageno; 
if ($pageno > $lastpage) { 
    $pageno = $lastpage; 
} 
if ($pageno < 1) { 
    $pageno = 1; 
} 
?> 

<div class='column3'><p class='bodygrey'> 

<?php 

$totalpages = ceil($numrows/$rows_per_page); 

if($totalpages >= 1){ $pagelinkcount = 1;} else { $pagelinkcount = 0; } 

if($totalpages > 1){ $pagelinkcount = 1; echo 'Page ';} 

while($pagelinkcount <= $totalpages && $totalpages > 1) { 




    echo "<a href=\"{$_SERVER['PHP_SELF']}?pageno={$pagelinkcount}\">{$pagelinkcount}</a> "; 

    $pagelinkcount++; 

} 
?> 
</p></div></div></div> 
<?php 


$limit = 'LIMIT ' .($pageno - 1) * $rows_per_page .',' .$rows_per_page; 
$query = "SELECT * FROM studies". 
     "ORDER BY date DESC $limit"; 


$result = mysql_query($query, $connection) or trigger_error("SQL", E_USER_ERROR); 
+1

mysql_error()会告诉你到底是什么MySQL不喜欢你的查询 – 2009-07-02 02:35:37

回答

8

这个问题可能与下面的代码:

$query = "SELECT * FROM studies". 
     "ORDER BY date DESC $limit"; 

这将产生以下查询:

SELECT * FROM studiesORDER BY date DESC $limit 

通知“研究”和“订单”之间缺少空间。

+0

不错,在第一个查询中看起来没错,没有发现第二个查询 – 2009-07-02 02:36:54