有一个代码:
<?php
session_start();
if($_SESSION['hgi4gfus83br6G7kihk'])
{
?>
<!DOCTYPE HTML>
<html>
<?php include_once('blocks/bootstrap_header.php'); ?>
<body>
<?php include_once('blocks/menu.php'); ?>
<?php
session_start();
if ($_SESSION['hgi4gfus83br6G7kihk'])
{
include_once ('function.php');
$db = new Database;
$scan = new Scan;
if (isset($_POST['submit']))
{
unset($_POST['submit']);
$db->update('offices', $_POST, 'id_office = ' . $_GET['id']);
header("Location: info.php?city=" . $_GET['city'] . "&id=" . $_GET['id']);
}
if (isset($_GET['city']) && isset($_GET['id']) && isset($_GET['edit']))
{
echo '<form name="office" method="post">';
echo '<table class="table">';
foreach($db->select('offices', '*', '', "city_office='" . $_GET['city'] . "' AND " . "id_office=" . $_GET['id']) as $key => $value)
{
foreach($value as $key2 => $value2)
{
echo '<tr>';
echo '<td>' . $key2 . '</td><td><input type="text" name="' . $key2 . '" value="' . $value2 . '"></td>';
echo '</tr>';
}
}
echo '<tr>';
echo '<td><input type="submit" name="submit" value="Записать"></td>';
echo '</tr>';
echo '</table>';
echo '</form>';
}
elseif (isset($_GET['city']))
{
if (isset($_GET['id']))
{
echo '<table class="table">';
echo '<tr>';
echo '<th scope="col">Адрес</th>';
echo '<th scope="col">Код</th>';
echo '<th scope="col">Ноутбук</th>';
//echo '<th scope="col">Teamviewer</th>';
echo '<th scope="col">Mikrotik</th>';
echo '<th scope="col">IP адрес</th>';
echo '<th scope="col">VNCFA</th>';
echo '<th scope="col">VNCVO</th>';
echo '<th scope="col">VNCA</th>';
echo '<th scope="col">Телефон</th>';
echo '</tr>';
foreach($db->select('offices', '*', '', "city_office='" . $_GET['city'] . "' AND " . "id_office=" . $_GET['id']) as $value)
{
echo '<td>' . '<a class="first" href="http://' . substr_replace($value['ip_office'], 10, -1) . ':5901" target="_blank">' . $value['type_street_office'] . ' ' . $value['street_office'] . ' ' . 'дом' . ' ' . $value['house_office'] . '</a></td>';
echo '<td>' . $value['code_office'] . '</td>';
echo '<td>' . $value['pwd_notebook_office'] . '</td>';
//echo '<td>' . $value['pwd_teamviewer_office'] . '</td>';
echo '<td>' . $value['pwd_mikrotik_office'] . '</td>';
echo '<td>' . '<a href="http://' . $value['ip_office'] . '" target="_blank">' . $value['ip_office'] . '</a></td>';
echo '<td>' . $value['pwd_vnc_full_acces_office'] . '</td>';
echo '<td>' . $value['pwd_vnc_view_only_office'] . '</td>';
echo '<td>' . $value['pwd_vnc_administrator_office'] . '</td>';
echo '<td>' . $value['telephone_office'] . '</td>';
echo '<a class="btn btn-primary" href="info.php?city=' . $_GET['city'] . '&id=' . $_GET['id'] . '&edit=true" role="button">Изменить</a>';
}
echo "</table>";
if(isset($_POST['add'])){
unset($_POST['add']);
$db->insert('logs_offices', $_POST);
}
echo '<form class="form-inline" method="post">';
echo '<div class="form-group mb-2">';
echo '<input type="hidden" value="' . $_GET['id'] . '" name="id_office_log_office">';
echo '<input class="form-control" type="text" name="text_log_office">';
echo '<button type="submit" class="btn btn-primary" name="add" >Добавить комментарий</button>';
echo '</div>';
echo '</form>';
echo '<table class="table">';
echo '<thead>';
echo '<tr>';
echo '<th scope="col">Коментарий</th>';
echo '<th scope="col">Время</th>';
echo '</tr>';
echo '</thead>';
echo '<tbody>';
foreach ($db->select('offices, logs_offices', '*', '', 'id_office="' . $_GET['id'] . '" AND id_office_log_office=' . $_GET['id'], 'datetime_log_office DESC') as $val)
{
echo '<tr>';
echo '<td>' . $val['text_log_office'] . '</td>';
echo '<td>' . $val['datetime_log_office'] . '</td>';
echo '</tr>';
}
echo '</tbody>';
echo '</table>';
}
else
{
echo '<table class="table">';
echo '<tr>';
echo '<th scope="col">Номер отделения</th>';
echo '<th scope="col">Адрес</th>';
echo '<th scope="col">Телефон</th>';
echo '</tr>';
foreach($db->select('offices', '*', '', "city_office='" . $_GET['city'] . "'") as $value)
{
echo '<tr>';
echo '<td>' . $value['number_office'] . '</td>';
echo '<td>' . '<a class="first" href="info.php?city=' . $value['city_office'] . '&id=' . $value['id_office'] . '">' . $value['type_street_office'] . ' ' . $value['street_office'] . ' ' . 'дом' . ' ' . $value['house_office'] . '</a></td>';
echo '<td>' . $value['telephone_office'] . '</td>';
echo '</tr>';
}
echo "</table>";
}
}
else
{
echo '<table class="table">';
echo '<tr>';
echo '<th scope="col">Город</th>';
echo '</tr>';
foreach($db->select('offices', '*', '', '', 'city_office') as $value)
{
echo '<tr>';
echo '<td><a href="info.php?city=' . $value['city_office'] . '">' . $value['city_office'] . '</a></td>';
echo '</tr>';
}
echo "</table>";
}
}
else
{
header("Location: index.php");
exit;
}
?>
</body>
</html>
<?php
}
else
{
header("Location: index.php");
}
?>
此代码执行以下任务。授权后,我进入某个页面,在该页面中可以看到城市列表。通过点击城市,我看到一个分支列表,通过点击一个分支,我看到这个分支的数据。现在我着手更改设计并将其绑定到引导网格,但我之前编写的代码结果很糟糕。由于我无法理解 MVC 的原理并应用它们,问题变得更加严重。因此,得到这样的粥。如何根据 MVC 设计模式来构建它?提前感谢您的帮助。如果你能用手指向我解释这个模式在这个例子中是如何应用的,那么一般来说你不会得到一个价格:)