0

我刚刚开始使用 PDO 而不是 mysql 函数。但现在我被困在我的 php 博客的一部分上。

我如何让这段代码对 PDO 更友好一点:

$total_results = mysql_fetch_array(mysql_query("SELECT COUNT(*) as num   
    FROM php_blog"));
$total_pages = ceil($total_results['num'] / $blog_postnumber);
for($i = 1; $i <= $total_pages; $i++) {
   if ($page == $i) {
      echo "<span class='current'>$i</span>";
   }
   else {
      echo "<a href=\"index.php?page=$i\">$i</a>";
   }
}

我尝试使用 PDO rowCount(),但它似乎不起作用......

对不起我的英语不好,我来自瑞典!

4

2 回答 2

0

rowCount 不适用于 PDO 中的 mySQL。相反,您只需运行 count(*) 查询。

<?php
$sql = "SELECT count(*) FROM `table` WHERE foo = bar"; 
$result = $con->prepare($sql); 
$result->execute(); 
$number_of_rows = $result->fetchColumn();

资料来源:使用 PDO 的行数

于 2013-03-10T12:14:11.540 回答
-1
$stmt = $db->exec( "select count(*) as num from php_blog" );
$results = $stmt->fetch();
$total_results = $results[ 'num' ];
$total_pages = ceil( $total_results / $blog_postnumber );
for($i = 1; $i <= $total_pages; $i++) {
   if ($page == $i) {
      echo "<span class='current'>$i</span>";
   }
   else {
   echo "<a href=\"index.php?page=$i\">$i</a>";
   }
}
于 2013-03-10T12:17:10.333 回答