我一直在逐页将整个网站从 MySQL 翻译成 PDO。在大多数情况下,此处的资源、示例和问题已被证明是学习差异和转换等价物的绝佳资源。但是,有一个声明我一直在苦苦思索,我觉得我可能需要就此向社区询问。它结合了 Query + Num_Rows 语句,我不确定是否有更简单的方法来重写它。我已经复制了下面页面的相关部分,但如果您需要更多信息,请告诉我。有问题的行是 $total_pages=mysql_num_rows(mysql_query('select author from '.$sql_bookshelfquery));
上述行所在的 PHP 文档部分(包括行本身)
$sql_bookshelfquery="trgbookshelf13 where trgbookshelf13.remove!=1 ";
$sql_bookshelfquery.=$querylevel;
$sql_bookshelfquery.=$isnew;
// How many adjacent pages should be shown on each side?
$adjacents = 3;
/*
First get total number of rows in data table.
If you have a WHERE clause in your query, make sure you mirror it here.
*/
$total_pages=mysql_num_rows(mysql_query('select author from '.$sql_bookshelfquery));
/* Setup vars for query. */
$limit = 50; //how many items to show per page
if($page)
$start = ($page - 1) * $limit; //first item to display on this page
else
$start = 0; //if no page var is given, set start to 0
/* Get data. */
$sql_bookshelfquery.=$orderby;
$sql_bookshelfquery.=" LIMIT $start, $limit";
$sql_bookshelfquery="SELECT * FROM ".$sql_bookshelfquery;
//$result = mysql_query($sql_bookshelfquery);
$result = $dbh->query($sql_bookshelfquery);
最佳答案
我不知 Prop 体你的 PDO 变量,但像这样的东西应该可以工作:
$sql = "SELECT COUNT(`author`) FROM " . $sql_bookshelfquery; // Write SQL
$sth = $dbh->prepare($sql); // Prepare query
$sth->execute(); // Execute query
$total_pages = $sth->fetchColumn(); // Fetch query result
干杯!
关于php - MySQL转PDO(具体实例),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30490989/