Lista rozwijana z bazy
Formularze: GET i POST - PHP i MySQL: strony z bazą danych (PHP i MySQL)
Opcje listy <select> nie muszą być wpisane ręcznie: pętla tworzy je z tabeli kwiaty. Atrybut value każdej opcji to id kwiatu, więc po wysłaniu formularza skrypt dostaje w $_GET["kwiat"] numer, a nie nazwę. Wybierz kwiat i kliknij Pokaż.
<?php $db = mysqli_connect("localhost", "root", "", "kwiaciarnia");
?>
<form method="get">
<select name="kwiat">
<?php
$result = mysqli_query($db, "SELECT id, nazwa FROM kwiaty");
while ($row = mysqli_fetch_assoc($result)) {
echo "<option value='" . $row["id"] . "'>" . $row["nazwa"] . "</option>";
}
?>
</select>
<button>Pokaż</button>
</form>
<?php
if (isset($_GET["kwiat"])) {
$stmt = mysqli_prepare($db, "SELECT nazwa, kolor, cena FROM kwiaty WHERE id = ?");
mysqli_stmt_bind_param($stmt, "i", $_GET["kwiat"]);
mysqli_stmt_execute($stmt);
$row = mysqli_fetch_assoc(mysqli_stmt_get_result($stmt));
echo "<p>" . $row["nazwa"] . ", kolor " . $row["kolor"] . ", cena " . $row["cena"] . " zł</p>";
}
mysqli_close($db);
?>Ładowanie interaktywnego edytora... Jeśli się nie pojawi, włącz JavaScript.
Wszystkie lekcje kursu PHP i MySQL: strony z bazą danych·Zaloguj się, aby zapisać postęp na koncie.