Подсчитать и вывести количество строк в базе данных

108
12 августа 2019, 10:50

ВСЕМ ПРИВЕТ!

Помогите справиться с задачкой. Есть таблица metki нужно вывести число на страницу сколько всего значений в таблице у которых в столбце type значение orange

то есть чтобы получилось что при сортировки были выбраны только те данные у которых значение type будет orange

и на странице рhp вывести число найденных значений с type = orange в данном примере 2

SELECT * FROM `metki` WHERE `type` = 'orange'
<h1><?php echo ........ ?></h1>
<span>Общее количество оранжевых</span>
Answer 1

Для подсчета строк в базе данных служит функция count().

Для работы с базой данных в РНР надо использовать PDO.

Соответственно, если тип всегда будет "orange" (или вообще без условий - в общем, в любом случае, когда в запросе не используются переменые), то использовать метод query():

$count = $pdo->query("SELECT * FROM `metki` WHERE `type` = 'orange'")->fetchColumn();

А если тип может меняться, или в любых других случаях когда в запросе используются переменные, то использовать надо подготовленные запросы:

$type = 'orange';
$stmt = $pdo->prepare("SELECT * FROM `metki` WHERE `type` = ?"); 
$stmt->execute([$type]); 
$count = $stmt->fetchColumn();

здесь мы сначала подготавливаем запрос, передавая вместо всех переменных знак вопроса, затем выполняем его, передавая все переменные в виде массива, а затем получаем результат.

READ ALSO
Помогите создать конфигурацию для Monit

Помогите создать конфигурацию для Monit

У меня есть сервер сокетов, который запускается через php файл и работает в фонеНо иногда он падает

102
Laravel Eloquent Index

Laravel Eloquent Index

В общем читал тут книжку, и нашел там следующие примеры:

137
RBAC yii2 Не получается обновить свои посты

RBAC yii2 Не получается обновить свои посты

Этот код не работает то есть должны были видны кнопки update и delete на своем посту (захожу ползователем который создал этот пост) в странице view но кнопки...

97
XMLreader php обработка ошибок

XMLreader php обработка ошибок

заметил такую ошибку, если в файле есть дубль закрывающего тега DocBody, то ридер не может получить его данные:

83