<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<title>Программирование на языке PHP</title>
<style>
body { font-family: Arial; margin: 20px; }
.card { border: 1px solid #ccc; padding: 15px; margin: 10px 0; border-radius: 5px; }
.error { color: red; }
</style>
</head>
<body>
<h1>Функции</h1>
<h2>Встроенные функции, часть 2</h2>
<?php
// Подключаем файлы с данными
require_once 'dump/teams.php';
require_once 'dump/albums.php';
require_once 'dump/tracks.php';
// Проверяем GET-параметр search
if (isset($_GET['search']) && $_GET['search'] != '') {
// Разбиваем строку вида "teams::3" на две части
$parts = explode('::', $_GET['search']);
if (count($parts) == 2) {
$entity = $parts[0]; // teams, albums или tracks
$id = $parts[1]; // id записи
// Какой массив использовать?
if ($entity == 'teams') {
$data = $content; // из teams.php
} elseif ($entity == 'albums') {
$data = $albumsContent; // из albums.php
} elseif ($entity == 'tracks') {
$data = $tracksContent; // из tracks.php
} else {
echo "<div class='error'>Неизвестная сущность: $entity</div>";
$data = [];
}
// Ищем запись с нужным id
$found = null;
foreach ($data as $item) {
if ($item['id'] == $id) {
$found = $item;
break;
}
}
// Выводим результат
if ($found) {
echo "<div class='card'>";
echo "<h3>" . htmlspecialchars($found['name']) . "</h3>";
foreach ($found as $key => $value) {
echo "<p><strong>$key:</strong> " . htmlspecialchars($value) . "</p>";
}
echo "</div>";
} else {
echo "<div class='error'>Запись с id=$id не найдена в $entity</div>";
}
} else {
echo "<div class='error'>Неверный формат. Используйте: entity::id (например, teams::3)</div>";
}
} else {
// Если параметр не передан - выводим примеры
echo "<div>";
echo "<p><strong>Примеры запросов:</strong></p>";
echo "<ul>";
echo "<li><a href='?search=teams::3'>?search=teams::3</a> - группа The Beatles</li>";
echo "<li><a href='?search=albums::2'>?search=albums::2</a> - альбом Wish You Were Here</li>";
echo "<li><a href='?search=tracks::10'>?search=tracks::10</a> - трек</li>";
echo "</ul>";
echo "</div>";
}
?>
</body>
</html>