Есть база данных db_cars Запрос к базе данных должен выводить марку и модель автомобиля, свойства которого укажет пользователь. Если запрос забить в SQLyog с определёнными данными то всё работает, через php ничего не получается ни определённые данные, не данные которые вводит пользователь.
Облазил уже всё, пересмотрел код огромное кол-во раз.
Структура БД: cars: brand model fuel_consumprion engine_code body_code car_engine: engine_code fuel_type engine_capacity body_car: body_code doors_number
<html>
<body>
<?php
ini_set('display_errors',1);
error_reporting(E_ALL);
$search_car = filter_input(INPUT_POST, 'search_car');
setlocale(LC_ALL, 'Russian_Russia.65001');
if ($search_car) {
$engine_capacity = $_POST['engine_capacity'];
$doorts_number = $_POST['doorts_number'];
$fuel_type = $_POST['fuel_type'];
$fuel_consumption = $_POST['fuel_consumption'];
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$db = mysqli_connect("localhost", "root", "sa", "db_cars");
if(mysqli_connect_errno()) {
die("Помилка з'єднання: ".mysqli_connect_error());}
else {
mysqli_set_charset($db, 'utf8');
$engine_capacity = mysqli_real_escape_string($db, $engine_capacity);
$doorts_number = mysqli_real_escape_string($db, $doorts_number);
$fuel_type = mysqli_real_escape_string($db, $fuel_type);
$fuel_consumption = mysqli_real_escape_string($db, $fuel_consumption);
$sql_cons = "SELECT `brand`,`model` FROM `cars` INNER JOIN `car_engine` ON `cars`.`engine_code` = `car_engine`.`engine_code` INNER JOIN `body_car` ON `cars`.`body_code` = `body_car`.`body_code`
WHERE `engine_capacity` = '$engine_capacity' AND `doorts_number` = '$doorts_number' AND `fuel_type` = '$fuel_type' AND `fuel_consumption` = '$fuel_consumption';";
printf("Виконується запит.\n",$sql_cons, $sql_2);
$result = mysqli_query($db, $sql_cons, $sql_2);
if ($row = mysqli_fetch_array($result, MYSQLI_ASSOC))
{
echo "<table border=1>\n";
echo "<tr><td>Бренд</td>
<td>Модель</td></tr>\n";
while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)){
printf("<tr><td>%s</td><td>%s</td></tr>\n",$row["brand"],$row["model"]);
};
echo "</table>\n";
mysqli_free_result($result);
}
}
} else { // відобразити форму
?>
<P>
<H3 ALIGN=CENTER> Пошук автомобілей </H3>
<P> Вкажіть дані автомобіля, які вас цікавлять:
<FORM METHOD="POST" ACTION="<?php echo $_SERVER['PHP_SELF']?>">
<p>Потужність двигуна <input name="engine_capacity" size="10"></p>
<P> Кількість дверей:
<INPUT NAME="doorts_number" SIZE="2">
<p> Тип палива
<INPUT TYPE="radio" NAME="fuel_type" value="petrol" checked="checked">Бензин
<input type="radio" name="fuel_type" value="gas"> Газ
<input type="radio" name="fuel_type" value="diesel"> Дизель
<input type="radio" name="fuel_type" value="electro">Електрика</p>
<p>Витрата пального <input name="fuel_consumption" size="5"></p>
<INPUT TYPE=SUBMIT name="search_car" value="Шукати">
<INPUT TYPE=RESET>
</FORM>
<?php
} // end if ?>
</body>
</html>
Во первых использовать простой mysqli и экранизировать запросы это такое себе, прочтите про PDO. Во вторых есть не сложная технология ajax которая без обновления страницы выполнит нужные вам изменения. Ещё строка которая выводит то что нужно
while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)){
printf("<tr><td>%s</td><td>%s</td></tr>\n",$row["brand"],$row["model"]);
};
попробуй заменить на
while ($row = mysqli_fetch_assoc($result)){
printf("<tr><td>%s</td><td>%s</td></tr>\n",$row["brand"],$row["model"]);
};
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Есть 2 приложенияОба приложения имеют определение интерфейса ICollback
Существует ли в Java регулярное выражение нажатие клавиши Enter как в python /r? Enter нужно отправить в консоль ssh, после выполнения команды