Thinkphp数据库在线备份下载和还原
推荐

Thinkphp数据库在线备份下载和还原
本文以实例演示了Thinkphp数据库备份、下载和还原,你也可以简单的改成不基于Thinkphp的框架的PHP代码,很方便的应用到你的后台数据库管理应用中。

我们在首页控制器Index重定向到了Bak控制器中,即数据库管理所有操作方法。备份的数据库放在根目录文件夹databak中,接着引入MySQLReback类。

$DataDir = "databak/"; 
mkdir($DataDir); 
import("Common.Org.MySQLReback"); 
$mr = new MySQLReback($config); 
$mr->setDBName(C('DB_NAME'));

备份:

if ($_GET['Action'] == 'backup') { 
    $mr->backup(); 
    echo "<script>document.location.href='" . U("Bak/index") . "'</script>"; 
   $this->success( '数据库备份成功!'); 
}

还原:

$mr->recover($_GET['File']); 
echo "<script>document.location.href='" . U("Bak/index") . "'</script>";

删除:


if ($_GET['Action'] == 'Del') { 
    if (@unlink($DataDir . $_GET['File'])) { 
        // $this->success('删除成功!'); 
        echo "<script>document.location.href='" . U("Bak/index") . "'</script>"; 
    } else { 
        $this->error('删除失败!'); 
    } 
}

读取备份的所有数据库列表


$lists = $this->MyScandir('databak/');

下载:

if ($_GET['Action'] == 'download') { 
    function DownloadFile($fileName) { 
        ob_end_clean(); 
        header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); 
        header('Content-Description: File Transfer'); 
        header('Content-Type: application/octet-stream'); 
        header('Content-Length: ' . filesize($fileName)); 
        header('Content-Disposition: attachment; filename=' . basename($fileName)); 
        readfile($fileName); 
        } 
        DownloadFile($DataDir . $_GET['file']); 
        exit(); 
    } 
}

版权属于:够过瘾——挨踢男的葵花宝典

文章标签:thinkphp3.2.3php框架

文章链接:http://www.gouguoyin.cn/php/54.html

转载时必须以链接形式注明原始出处及本声明。

如果您觉得本文对您有所帮助,请小额赞助一下,我会优先回答您在使用过程中出现的问题,点此赞助

如有疑问或遇到技术问题,请加官方QQ群: 421537504   GoCMS官方交流群

文章点评:

表情

409条评论

  • slx 1周前
    很实用
  • waterzone 1周前
    很实用...
  • 小崔 2周前
    看看
  • ueser叶小帅 2周前
    kk
  • 这我发的 1月前
    谢谢
  • duanqu 1月前
    1111
  • 似水 1月前
    先评论
  • 张先生111 1月前
    先评论?
  • toyafei 1月前
    下载试试
  • peento 1月前
    下载试试
  • kaiasdas 2月前
    buco
  • bondzy 2月前
    很好 很实用
  • 大哥哥1983 2月前
    很好 很实用
  • asdfgqwer 2月前
    aaaaa a
  • changda 3月前
    很不错
  • 我就是某某某 3月前
  • jakyge 3月前
    我擦,不容易,
  • caking 3月前
    666
  • goucjteam 4月前
    我擦,不容易,
  • 触动心扉 4月前
    1111