<head>
<title>БД</title>
<meta charset="windows 1251">
<script></script>
</head>
<?PHP
//> Library
function createMysqli($host = 'localhost', $login = 'root', $psw = '', $bd = 'mysql') {
if (!$mysqli) {
}
exit("Ошибка доступка бд {$bd}"); }
return $mysqli;
}
function createSmartyRsArray($rs) {
if (!$rs) return false;
$smartyRs = $row;
}
return $smartyRs;
}
function createSmartyRsAllArr($rs) {
if (!$rs) return false;
$smartyRs[] = $row;
}
return $smartyRs;
}
//<
//> Models
//Список
function listShowBD() {
$mysqli = createMysqli();
$sql = "SHOW DATABASES";
return createSmartyRsAllArr($rs);
}
function listShowTableBD($name) {
$mysqli = createMysqli();
$sql = "SHOW TABLES FROM {$name}";
return createSmartyRsAllArr($rs);
}
function listInfoTableBD($bd, $table, $id) {
$mysqli = createMysqli($host = 'localhost', $login = 'root', $psw = '', $bd);
$sql = "SELECT * FROM {$table} LIMIT {$id}, 50";
return createSmartyRsAllArr($rs);
}
function countsInfoTableBD($bd, $table) {
$mysqli = createMysqli($host = 'localhost', $login = 'root', $psw = '', $bd);
$sql = "SELECT count(*) FROM {$table}";
return createSmartyRsArray($rs);
}
//<
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf8">
<title>База данных</title>
<style>
* {
padding: 0;
margin: 0;
}
ul {
margin: 10px;
}
ul li a {
color: orange;
}
ul li {
list-style-type: none;
}
ul li a:hover{
opacity: 0.6;
}
table {
width: 1000px;
text-align: center;
}
table tr:nth-child(1) {
color: red;
}
tr{
border: 0;
}
.name-slot td{
border-left: 1px solid black;
border-top: 1px solid black;
border-bottom: 1px solid black;
}
.name-select td{
border-left: 1px solid black;
border-bottom: 1px solid black;
}
.kol {
text-align: center;
width: 100%;
height: 50px;
}
a {
margin: 0;
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
.paginator{
color: red;
width: 250px;
text-align: center;
margin: 0 auto;
}
</style>
</head>
<body>
<div >
<div style="text-align:center; position:relative; width: 1000px; background-color: #FFFFFF;">
<fieldset><legend>Базы</legend>
<table>
<!-- Отрисовка спика БД-->
<?PHP function ShowAction() {?>
<?PHP
//Возвращаем данные
$showDB = listShowBD();
?>
<ul>
<?PHP if (isset($showDB) && $showDB){?> <?PHP foreach ($showDB as $key => $value){?>
<li>
<a href="?action=ShowListTableBd&name=<?= $value['Database']?>"><?= $value['Database']?></a>
</li>
<?PHP }?>
<?PHP } else {?>
Ничего не найдено
<?PHP }?>
</ul>
<?PHP }?>
<!--< Отрисовка спика БД-->
<!-- Отрисовка спика таблиц БД-->
<?PHP function ShowListTableBdAction() {?>
<?PHP
$name = isset($_GET['name']) ?
$_GET['name'] : 'Evgenii_petrov'; //Возвращаем данные
$showTableDB = listShowTableBD($name);
$countTable = count($showTableDB); $nameBD = $_GET['name'];
?>
<ul>
<p class="kol">Количество таблиц: <?= $countTable?></>
<?PHP if (isset($showTableDB) && $showTableDB){?> <?PHP foreach ($showTableDB as $key => $value){?>
<li>
<a href="?action=ShowInfoTable&bd=<?= $nameBD?>&name=<?PHP
foreach ($value as $k => $nameTable) {
echo $nameTable;
}
?>">
<?PHP foreach ($value as $k => $nameTable) {?>
<?PHP echo $nameTable;}?></a>
</li>
<?PHP }?>
<?PHP } else {?>
Ничего не найдено
<?PHP }?>
</ul>
<?PHP }?>
<!--< Отрисовка спика таблиц БД-->
<!-- Отрисовка таблиц БД-->
<?PHP function ShowInfoTableAction() {?>
<?PHP
//Возвращаем данные
$bd = $_GET['bd'];
$id = isset($_GET['id']) ?
$_GET['id'] : 0; $nameTable = $_GET['name'];
$showTables = listInfoTableBD($bd, $nameTable, $id);
$count = countsInfoTableBD($bd, $nameTable);
$count = $count['count(*)'];
?>
<div class="paginator"> <?PHP for($i = 0; $i <$round; $i++) {?>
<a href="?action=ShowInfoTable&bd=<?= $bd?>&name=<?= $nameTable?>&id=<?PHP
echo $i * 50;
?>"> <?= $i + 1 ?> </a>
<?PHP }?></div>
<table>
<?PHP if (isset($showTables) && $showTables){?> <!--Имена ячеек-->
<tr class="name-slot">
<?PHP foreach ($showTables[0] as $tables => $value){?>
<!--Имена ячеек-->
<td> <?= $tables?></td>
<!--Имена ячеек-->
<?PHP }?>
</tr>
<!--Имена ячеек-->
<!--Даные ячееек-->
<?PHP foreach ($showTables as $tables => $value){?>
<!--данные ячеек-->
<tr class="name-select">
<?PHP foreach ($value as $k => $va){?>
<td><?= $value[$k]?></td>
<?PHP }?>
<!--данные ячеек-->
</tr>
<?PHP }?>
<?PHP } else {?>
Ничего не найдено
<?PHP }?>
</table>
<?PHP }?>
<!--< Отрисовка таблиц БД-->
</body>
</html>
<?PHP
$actionName = isset($_GET['action']) ?
ucfirst($_GET['action']) : 'Show'; $actionName .= 'Action';
$actionName();
?>