我最近又回到了一些PHP编程,但已经陷入与PHP分页的东西,似乎我试过的任何事情都会导致它不计算页面和在结果的一页上显示,或者只是在第6页停下来,并且不再进一步,我知道存储在MySQL数据库中的数据,它应该显示52页结果,每页12个。PHP分页不能正常工作,在第6页停止
所以我需要一些帮助,我认为这是有效的,直到我打入数据库之后,将不会超过第100页。
的代码如下
<?php
//
//How to print date
//
if($print_date == 1)
{
$print_date = '%d.%m.%Y';
}
elseif($print_date == 2)
{
$print_date = '%m.%d.%Y';
}
elseif($print_date == 3)
{
$print_date = '%W, %M %D %Y';
}
if (isset($_GET['pageno'])) {
$pageno = $_GET['pageno'];
} else {
$pageno = 1;
} // if
$get_matches = mysql_query("SELECT
O.OpponentName AS hometeam, OP.OpponentName AS awayteam,
LM.LeagueMatchHomeGoals AS goals_home,
LM.LeagueMatchAwayGoals AS goals_away,
LM.LeagueMatchID AS id,
DATE_FORMAT(LM.LeagueMatchDate, '$print_date') AS date
FROM tplls_leaguematches LM, tplls_opponents O, tplls_opponents OP
WHERE O.OpponentID = LM.LeagueMatchHomeID AND
OP.OpponentID = LM.LeagueMatchAwayID AND
LeagueMatchSeasonID LIKE '$defaultseasonid'
ORDER BY LM.LeagueMatchDate");
$get_matches = @mysql_query($SQL) or die("Error Processing Fixtures");
$query_data = mysql_fetch_row($get_matches);
$numrows = $query_data[0];
$rows_per_page = 12;
$lastpage = ceil($numrows/$rows_per_page);
$pageno = (int)$pageno;
if ($pageno > $lastpage) {
$pageno = $lastpage;
} // if
if ($pageno < 1) {
$pageno = 1;
} // if
$limit = 'LIMIT ' .($pageno - 1) * $rows_per_page .',' .$rows_per_page;
$get_matches2 = mysql_query("SELECT
O.OpponentName AS hometeam, OP.OpponentName AS awayteam,
LM.LeagueMatchHomeGoals AS goals_home,
LM.LeagueMatchAwayGoals AS goals_away,
LM.LeagueMatchID AS id,
DATE_FORMAT(LM.LeagueMatchDate, '$print_date') AS date
FROM tplls_leaguematches LM, tplls_opponents O, tplls_opponents OP
WHERE O.OpponentID = LM.LeagueMatchHomeID AND
OP.OpponentID = LM.LeagueMatchAwayID AND
LeagueMatchSeasonID LIKE '$defaultseasonid'
ORDER BY LM.LeagueMatchDate, hometeam $limit",$connection)
or die(mysql_error());
while($row = mysql_fetch_array($get_matches2))
{
?>
更多以添加,如果我拿出第一个SELECT语句,我得到了同样的结果?
注意:如果您正在从事生产工作,您应该查看[mysqli](http://us.php.net/manual/en/book.mysqli.php)和[预先准备的语句](http:// us3 .php.net /手动/ EN/pdo.prepared-statements.php)。大多数教程吸吮!我发现[这篇文章在SitePoint上](http://www.sitepoint.com/perfect-php-pagination/)。我还没有读过它,但它看起来很有希望。 – Herbert
这似乎并不奏效,它引发了一个致命的错误。 致命错误:位于/home/vhosts/binfieldfc.com/httpdocs/leaguetables/firstteam/index2.php中的SQL行1688 – OuterHaven
这是行 1688 $ result = @mysql_query($ query)或trigger_error(“SQL”, E_USER_ERROR); – OuterHaven