Intereting Posts
В чем разница между getcwd и __DIR__? Как узнать, ошибочно ли ffmpeg? Преобразование количества минут в часы и минуты с помощью PHP Используйте .htaccess, чтобы предотвратить доступ к корневому каталогу из открытого доступа Доступ к данным сеанса за пределами Joomla Насколько безопасен код кодировки PHP bcompiler? Могу ли я вызвать die после эха с PHP? Какое время использовать real_escape_string? Когда данные поступают в POST или непосредственно перед составлением запроса? Где находится файл php.ini на ПК Linux / CentOS? это ключевое слово в Java и PHP Общие таблицы Drupal, но из другой базы данных как получить первый и последний дни данного месяца почему php генерирует одни и те же идентификаторы сеансов каждый раз в тестовой среде (WAMP)? PHP Несколько одновременных сеансов на пользователя Предупреждение: mysqli_stmt :: bind_param (): Число переменных не соответствует количеству параметров в подготовленном операторе в C: \ User .. \ on 148

Как получить общие найденные строки без учета предела в PDO?

Мне было очень непрофессионально делать вторичный запрос, чтобы проверить больше результатов, чтобы отобразить кнопку загрузки больше .

Я использую PDO, есть ли способ получить общие найденные строки без фильтра предельных значений, но все же фильтровать результаты?

Текущий код:

// Show Results $start = 0 $r=$db->prepare("SELECT * FROM locations WHERE area=:area LIMIT $start,10"); $r->execute($fields); // See if there is more results $r=$db->prepare("SELECT * FROM locations WHERE area=:area"); $r->execute($fields); $offset=$start+10; if($r->rowCount() > $offset){ echo "<div class='load'>Load More</div>"; } 

MySQL только AFAIK:

 $r=$db->prepare("SELECT SQL_CALC_FOUND_ROWS * FROM locations WHERE area=:area LIMIT $start,10"); $r->execute($fields); var_dump($r->fetchAll()); var_dump($db->query('SELECT FOUND_ROWS();')->fetch(PDO::FETCH_COLUMN)); 

Примерно так же тяжело для сервера базы данных, как запрос на одно время для всех записей, конечно. Для использования, отличного от MySQL, этот запрос, конечно, лучше, чем подсчет строк всех записей:

 $r=$db->prepare("SELECT COUNT(*) FROM locations WHERE area=:area"); $r->execute($fields); $count = $r->fetch(PDO::FETCH_COLUMN); echo $count;