Файл: hostbiter.ru/Modules/mgr/mysql.php
Строк: 159
<?
require ($_SERVER['DOCUMENT_ROOT'].'/Core/core.php');
$title = 'MySQL базы';
require ($_SERVER['DOCUMENT_ROOT'].'/Core/myhead.php');
switch($_GET['list']){
default:
$max = 10;
$checkss = $db->prepare("SELECT * FROM `mysql_base` WHERE `user` = ?");
$checkss->execute([$user['id']]);
$k_post = $checkss->rowCount();
echo 'MySQL базы данных:<br/>
Всего баз: '.$k_post.'<br/>';
$k_page = k_page($k_post,$max);
$page = page($k_page);
$start = $max*$page-$max;
$all = $db->prepare("SELECT * FROM `mysql_base` WHERE `user` = ? LIMIT $start,$max");
$all -> execute([$user['id']]);
$all = $all -> fetchAll();
foreach($all as $row){
$api1 = file_get_contents($config['PanelUrl']."/ispmgr?authinfo=".$user['login'].":".decode($user['password'])."&out=xml&func=db&name=".$row['dbname']."");
$parse = simplexml_load_string($api1);
//exit(print_r($parse));
?>
<div class="border2">
<div style="float:right;width:16%;color:red;" class="border2">
<a href="/mgr/mysql.php?list=drop&id=<?=$row['id']?>"><img src="/image/delete.png" alt="" title="Удалить базу <?=$row['dbname']?>" /></a>
<a href="/mgr/mysql.php?list=backup1&id=<?=$row['id']?>"><img src="/image/backup.png" alt="" title="Создать бэкап базы <?=$row['dbname']?>" /></a>
<a href="/mgr/mysql.php?list=comm&db=<?=$row['dbname']?>"><img src="/image/balloon.gif" alt="" title="Добавить комментарий к базе <?=$row['dbname']?>" /></a>
<a href="/mgr/mysql.php?list=conn&id=<?=$row['id']?>"><img src="/image/forums.gif" alt="" title="Параметры подключения к базе <?=$row['dbname']?>" /></a>
</div>
MySQL хост: <b>localhost</b><br />
MySQL порт: <b>3306</b><br />
MySQL логин: <b><?=$row['login']?></b><br/>
MySQL пароль: <small><b> ваш пароль </b></small><br/>
MySQL база данных: <b><?=$row['dbname']?></b><br />
Размер базы: <b><?=dbsize($parse->size)?></b>
<?
if($row['comment'] != ''){
echo '<br/><small>Комментарий: '.$row['comment'].'</small>';
}
?>
</div>
<?
}
if($k_page >1){
echo str('?',$k_page,$page);
}
echo '<img src="/image/add.png" alt="" /> <a href="/mgr/mysql.php?list=create">Создать базу</a>';
break;
case 'drop':
$dbid3 = abs(intval($_GET['id']));
$dbb = $db->prepare("SELECT * FROM `mysql_base` WHERE `id` = ?");
$dbb->execute([$dbid3]);
$dbb = $dbb->fetch();
if($dbb['user'] != $user['id']) $err = 'База данных не принадлежит вам!';
if(!$err){
$api5 = file_get_contents($config['PanelUrl']."/ispmgr?authinfo=".$user['login'].":".decode($user['password'])."&out=xml&func=db.delete&elid=".$dbb['dbname']."->MySQL");
$sql5 = $db->prepare("DELETE FROM `mysql_base` WHERE `id` = ?");
$sql5->execute([$dbid3]);
$sql7 = $db->prepare("UPDATE `users` SET `bases` = `bases` - ? WHERE `id` = ?");
$sql7->execute([1,$user['id']]);
$_SESSION['message'] = 'База данных удалена!';
header("Location: /mgr/mysql.php");
exit;
}else{
$_SESSION['message'] = $err;
header("Location: /mgr/mysql.php");
exit;
}
break;
case 'create':
if(isset($_GET['create'])){
$login = 'db'.rand(1,214748364);
$password = htmlspecialchars(trim($_POST['password']));
$comment = htmlspecialchars(trim($_POST['comment']));
$tar = $db->prepare("SELECT * FROM `tarifs` WHERE `id` = ?");
$tar->execute([$user['tarif']]);
$tar = $tar->fetch();
if($user['bases'] >= $tar['db']) $err = 'Слишком много баз данных!';
if(!$err){
$api2 = file_get_contents($config['PanelUrl']."/ispmgr?authinfo=".$user['login'].":".decode($user['password'])."&out=xml&func=db.edit&sok=ok&name=".$login."&owner=".$user['login']."&username=".$login."&password=".$password."&confirm=".$password."");
$sql1 = $db->prepare("INSERT INTO `mysql_base` (`user`,`login`,`password`,`comment`,`dbname`) VALUES (?,?,?,?,?)");
$sql1->execute([$user['id'],$login,$password,$comment,$login]);
$sql6 = $db->prepare("UPDATE `users` SET `bases` = `bases` + ? WHERE `id` = ?");
$sql6->execute([1,$user['id']]);
$_SESSION['message'] = 'База успешно создана!';
header("Location: /mgr/mysql.php");
exit;
}else{
$_SESSION['message'] = $err;
header("Location: /mgr/mysql.php");
exit;
}
}
?>
<form action="/mgr/mysql.php?list=create&create" method="post">
Пароль:<br />
<input name="password" type="password" required/><br />
Комментарий:<br />
<textarea class="area" cols="65" rows="5" name="comment"></textarea>
<div><input type="submit" name="create" value="Создать" /></div>
</form>
<img src="/image/reload.gif" alt="" /> <a href="/mgr/mysql.php">Назад</a>
<?
break;
case 'backup1':
$dbid = abs(intval($_GET['id']));
$sdb = $db->prepare("SELECT * FROM `mysql_base` WHERE `id` = ?");
$sdb->execute([$dbid]);
$sdb = $sdb->fetch();
if($sdb['user'] != $user['id']){
$_SESSION['message'] = 'База не принадлежит вам!!!';
header("Location: /mgr/mysql.php");
exit;
}
?>
MySQL базы данных:<br /><img src="/image/backup.png" alt="" /> Создание бэкапа базы<br /><br />
База данных: <b><?=$sdb['dbname']?></b><br />
<a href="/mgr/mysql.php?list=backup2&id=<?=$dbid?>"><button>Создать</button></a></div>
</form><img src="/image/reload.gif" alt="" /> <a href="mysql.php?">Назад</a>
<?
break;
case 'backup2':
$dbid2 = abs(intval($_GET['id']));
$sdb2 = $db->prepare("SELECT * FROM `mysql_base` WHERE `id` = ?");
$sdb2->execute([$dbid2]);
$sdb2 = $sdb2->fetch();
if($sdb2['user'] != $user['id']){
$_SESSION['message'] = 'База не принадлежит вам!!!';
header("Location: /mgr/mysql.php");
exit;
}
$api4 = file_get_contents($config['PanelUrl']."/ispmgr?authinfo=".$user['login'].":".decode($user['password'])."&func=db.dump&elid=".$sdb2['dbname']."->MySQL&plid=&newwindow=no");
$name_dump = $sdb2['dbname']."_".date('H:i:s_d.m.y',time()).".sql";
$dir_dump = $_SERVER['DOCUMENT_ROOT'].'/tmp_dumps/';
file_put_contents($dir_dump.$name_dump,$api4);
$connect_ftp = ftp_connect($config['FTPHost'],21,300);
$ftp = $db->prepare("SELECT * FROM `ftp_users` WHERE `user` = ? LIMIT 1");
$ftp->execute([$user['id']]);
$ftp = $ftp->fetch();
ftp_login($connect_ftp,$ftp['login'],$ftp['password']);
ftp_chdir($connect_ftp,'/www/'.$user['login'].'.'.$config['HostSite']);
$dir = $dir_dump.$name_dump;
ftp_put($connect_ftp,$name_dump,$dir,FTP_ASCII);
ftp_close($connect_ftp);
unlink($dir);
?>
MySQL базы данных:<br /><br /> <center> <div class="mess"> <img src="/image/warning.png" alt="" /> Бэкап базы данных <?=$sdb2['dbname']?> успешно сделан! <br /> /<?=$name_dump?> </div> </center> <br /><img src="/image/reload.gif" alt="" /> <a href="/mgr/mysql.php?">Назад</a>
<?
break;
case 'comm':
$dbname = htmlspecialchars(trim($_GET['db']));
if(isset($_GET['change'])){
$comment = htmlspecialchars(trim($_POST['comm']));
$dbn = htmlspecialchars(trim($_POST['db']));
$sql14 = $db->prepare("UPDATE `mysql_base` SET `comment` = ? WHERE `dbname` = ?");
$sql14->execute([$comment,$dbn]);
$_SESSION['message'] = 'Комментарий добавлен!';
header("Location: /mgr/mysql.php");
exit;
}
?>
MySQL базы данных:<br />
Добавления комментария к базе данных <?=$dbname?><br /><br />
Сообщение:<br />
<form action="/mgr/mysql.php?list=comm&change" method="post">
<textarea class="area" cols="65" rows="5" name="comm" required></textarea>
<input type="hidden" name="db" value="<?=$dbname?>">
<input type="submit" name="change" value="Добавить" /><br /><img src="http://hostbiter.ru/image/reload.gif" alt="" /> <a href="/mgr/mysql.php?">Назад</a>
<?
break;
case 'conn':
$dbid = abs(intval($_GET['id']));
$sdb2 = $db->prepare("SELECT * FROM `mysql_base` WHERE `id` = ?");
$sdb2->execute([$dbid]);
$sdb2 = $sdb2->fetch();
if($sdb2['user'] != $user['id']){
$_SESSION['message'] = 'База не принадлежит вам!!!';
header("Location: /mgr/mysql.php");
exit;
}
?>
MySQL базы данных:<br />Пример подключения к базе данных: <br />
MySQL:<br/>
<textarea style="box-shadow: 4px 5px 3px #666;" cols="58" rows="5"><?php
@mysql_connect('localhost', '<?=$sdb2['login']?>', 'ваш пароль');
@mysql_select_db('<?=$sdb2['dbname']?>');
@mysql_set_charset('utf8');
?></textarea><br />
MySQLi:<br/>
<textarea style="box-shadow: 4px 5px 3px #666;" cols="58" rows="5"><?php
$mysqli = new mysqli('localhost','<?=$sdb2['login']?>','ваш пароль','<?=$sdb2['dbname']?>');
$mysqli->exec("SET NAMES utf8");
?></textarea><br/>
PDO:<br/>
<textarea style="box-shadow: 4px 5px 3px #666;" cols="58" rows="5"><?php
$pdo = new PDO('mysql:host=localhost;dbname=<?=$sdb2['dbname']?>','<?=$sdb2['login']?>','ваш пароль');
$pdo->exec("SET NAMES utf8");
?></textarea><br/>
<img src="http://my.keo.su/image/reload.gif" alt="" /> <a href="/mgr/mysql.php">Назад</a>
<?
break;
}
require ($_SERVER['DOCUMENT_ROOT'].'/Core/myfoot.php');
?>