<?php include_once('db.php');
$query = ('SELECT * FROM carsekb WHERE car_name = :car ORDER BY car_name ASC');
$stmt = $pdo->prepare($query);
$stmt->execute(['car' => $_POST['carname']]);
$results = $stmt->fetchAll(PDO::FETCH_ASSOC);
echo "<table>";
for ($i = 0; $i < count($results); $i++) { ?>
<tr>
<td><?= $results[$i]['car_name']; ?></td>
<td><?= $results[$i]['uberstart']; ?></td>
<td><?= $results[$i]['uberx']; ?></td>
</tr>
<?php }
echo "</table>"; ?>
Использую PDO. В данном примере поиск стоит по равному значению car_name = :car. Есть ли какой-то способ просто искать по части слова, к примеру, набираю volksw и жму поиск - вылазит volkswagen passat, volkawagen jetta и тд все что содержит volksw, и точно также если ищу volkswagen pas - вылезало volkswagen passat?
Поиск нужно делать по LIKE, а не по =
Что-то вроде такого:
$query = $database->prepare('SELECT * FROM table WHERE column LIKE ?');
$query->execute(array('%value%'));
Для поиска частичного совпадения может быть использована такая конструкция
USE ИМЯ_БД
SELECT * FROM `ТАБЛИЦА`
WHERE ИМЯ_ПОЛЯ LIKE 'ЧТО ИЩЕМ%'
Знак процента обязателен! Он как раз указывает на то что мы ищем только по первой части выражения.
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости