Практические работы по WEB-программирование / Лаба 7 / Web Лаб 7
.docxПрактическая работа № 7
Задание
1. С помощью phpMyAdmin создать новую базу данных и таблицу.
2. Занести несколько записей в таблицу
3. С помощью PHP отобразить все записи таблицы.
4. Осуществить выборку данных по какому-либо критерию(фильтру)
5.Реализовать параметрический запрос (значение параметра определяется выпадающим списком <select>)
Ход работы
Создали базу данных.
Создали и заполнили таблицу.
PHP отобразили все таблицы
Листинг программы:
<?php
// Подключение к базе данных
$mysqli = new mysqli("127.0.0.1", "root", "", "povolyaevdb");
// Проверка подключения
if ($mysqli->connect_error) {
die("Ошибка подключения: " . $mysqli->connect_error);
}
// SQL-запрос для выбора всех записей из таблицы
$sql = "SELECT * FROM my_table";
// Выполнение запроса
$result = $mysqli->query($sql);
// Вывод результатов
if ($result->num_rows > 0) {
while ($row = $result->fetch_assoc()) {
echo "ID: " . $row["id"] . " - Name: " . $row["name"] . " - Age: " . $row["age"] . " - Email: " . $row["email"] . "<br>";
}
} else {
echo "Нет записей в таблице.";
}
// Закрытие подключения
$mysqli->close();
?>
Выбрали записи, где возраст (age) меньше 30:
Листинг программы:
<?php
// Подключение к базе данных
$mysqli = new mysqli("127.0.0.1", "root", "", "povolyaevdb");
// Проверка подключения
if ($mysqli->connect_error) {
die("Ошибка подключения: " . $mysqli->connect_error);
}
// SQL-запрос с условием фильтрации
$sql = "SELECT * FROM my_table WHERE age < 30";
// Выполнение запроса
$result = $mysqli->query($sql);
// Вывод результатов
if ($result->num_rows > 0) {
while ($row = $result->fetch_assoc()) {
echo "ID: " . $row["id"] . " - Name: " . $row["name"] . " - Age: " . $row["age"] . " - Email: " . $row["email"] . "<br>";
}
} else {
echo "Нет записей в таблице.";
}
// Закрытие подключения
$mysqli->close();
?>
Создали форму в html и скрипт php к нему.
Листинг программы:
forma.html
<form method="post" action="parametric.php">
<select name="name">
<option value="John Doe">John Doe</option>
<option value="Jane Smith">Jane Smith</option>
<!-- Добавьте остальные опции по вашему выбору -->
</select>
<input type="submit" value="Search">
</form>
parametric.php
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// Подключение к базе данных
$mysqli = new mysqli("127.0.0.1", "root", "", "povolyaevdb");
// Проверка подключения
if ($mysqli->connect_error) {
die("Ошибка подключения: " . $mysqli->connect_error);
}
// Получение значения из выпадающего списка
$filter_value = $_POST["name"];
// SQL-запрос с параметрами
$sql = "SELECT * FROM my_table WHERE name = ?";
// Подготовка параметрического запроса
$stmt = $mysqli->prepare($sql);
$stmt->bind_param("s", $filter_value);
// Выполнение запроса
$stmt->execute();
// Получение результатов
$result = $stmt->get_result();
// Вывод результатов
if ($result->num_rows > 0) {
while ($row = $result->fetch_assoc()) {
echo "ID: " . $row["id"] . " - Name: " . $row["name"] . " - Age: " . $row["age"] . " - Email: " . $row["email"] . "<br>";
}
} else {
echo "Нет записей в таблице.";
}
// Закрытие подключения
$mysqli->close();
}
?>