Глава 23
Сценарии, выводящие описания страны, города и отеля однотипны.
Сценарий вывода описания страны получает название страны по ссылке, то есть методом
GET, затем происходит вызов метода show_description() для получения инф о cтране.
Метод show_city_list() возвращает список городов выбранной страны.
Листинг 23.5 display_country.php - описание страны
<?php
// Автозагрузка класса
function __autoload($class)
{
// Подключение файла с именем "class_имя_класса.php"
include("class_" . $class . ".php");
}
$page= new hat_foot;
$page->hat();
$country = $_GET['name'];
echo "Страна: ".$country."<br/>";
$strana= new country($country);
echo $strana->show_description();
echo "<br/>Города: <br/>";
$spisok = $strana->show_city_list();
foreach ($spisok as $gorod)
{
echo $gorod."<br/>";
}
$page->footer();
$strana->connect_close();
?>
/*
Метод show_description() выводит описание объекта
Выборка данных производится из таблицы, имя которой
определяется в зависимости от класса, из которого
вызывается метод
*/
function show_description
($country=NULL)
{
if ($this instanceof country) $quest="SELECT description FROM countries
WHERE name=\"$this->name\"";
if ($this instanceof city) $quest="SELECT description FROM cities
WHERE name=\"$this->name\" AND country=\"$country\" ";
// Запрос описания объекта - страны или города
if ($result = $this->connection->query
($quest))
{
$row = $result->fetch_assoc();
$opisanie = $row['description'];
}
$result->close();
return $opisanie;
}
/*
Вывод списка городов в выбранной стране
*/
function
show_city_list()
{
$request="SELECT name FROM cities WHERE country=\"$this->name\"";
if ($result = $this->connection->query
($request))
{
while( $row = $result->fetch_assoc()
)
{
$spisok[] = $row['name'];
}
$result->close();
return $spisok;
}
}
Код html-страницы:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0048)http://localhost/display_country.php?name=Россия -->
<HTML><HEAD><TITLE>Магазин путешествий</TITLE>
<META http-equiv=Content-Type content="text/html; charset=windows-1251">
<META content="MSHTML 6.00.2900.2523" name=GENERATOR></HEAD>
<BODY>
<DIV align=right><IMG height=50 src="display_country.files/title.gif"
width=300></DIV>Страна: Россия<BR>Огромная по территории<BR>Города:
<BR>Москва<BR>Санкт_Петербург<BR>
<P><IMG height=40 src="display_country.files/footer.gif"
width=400></P></BODY></HTML>
Назад |
Начало урока |
Вверх |
Вперед
Содержание