Ejemplo n.º 1
0
        $dump = '/*' . PHP_EOL;
        $dump .= 'Warning: Do not change the comments!!!' . PHP_EOL . PHP_EOL;
        $dump .= 'Tieba-Cloud-Sign Database Backup' . PHP_EOL;
        $dump .= 'Tieba-Cloud-Sign Version : ' . SYSTEM_VER . PHP_EOL;
        $dump .= 'Tieba-Cloud-Sign Name : ' . SYSTEM_NAME . PHP_EOL;
        $dump .= 'MySQL Server Version : ' . $m->getMysqlVersion() . PHP_EOL;
        $dump .= 'Date: ' . date('Y-m-d H:i:s') . PHP_EOL;
        $dump .= '*/' . PHP_EOL . PHP_EOL;
        $dump .= '-------------- Start --------------' . PHP_EOL . PHP_EOL;
        $dump .= 'SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";' . PHP_EOL;
        $dump .= 'SET FOREIGN_KEY_CHECKS=0;' . PHP_EOL;
        $dump .= 'SET time_zone = "+8:00";' . PHP_EOL . PHP_EOL;
        while ($v = $m->fetch_array($e)) {
            $list = $v;
            foreach ($list as $table) {
                $dump .= dataBak($table);
            }
        }
        $dump .= PHP_EOL . '-------------- End --------------';
        $title = SYSTEM_NAME . " " . date('Y-m-d') . " 数据库备份";
        $x = misc::mail($email, $title, "备份文件已附上,请查看附件", array('backup-' . date('Ymd') . '.sql' => $dump));
        if ($x != true) {
            option::set('dl_backup_log', date('Y-m-d H:i:s') . '  数据库备份邮件发送失败!');
            ReDirect(SYSTEM_URL . 'index.php?mod=admin:setplug&plug=dl_backup&wrong');
        } else {
            option::set('dl_backup_log', date('Y-m-d H:i:s') . '  数据库备份邮件发送成功!');
            ReDirect(SYSTEM_URL . 'index.php?mod=admin:setplug&plug=dl_backup&success');
        }
    }
}
?>
Ejemplo n.º 2
0
 doAction('data_prebakup');
 $filename = $defname . '.sql';
 $fso = fopen('kl_auto_backup_and_mail_config.php', 'r');
 //获取配置文件内容
 $config = fread($fso, filesize('kl_auto_backup_and_mail_config.php'));
 fclose($fso);
 $patt = array("/define\\('KL_AUTO_BACKUP_AND_MAIL_LAST_BACKUP_FILE',(.*)\\)/");
 $replace = array("define('KL_AUTO_BACKUP_AND_MAIL_LAST_BACKUP_FILE','" . $filename . "')");
 $new_config = preg_replace($patt, $replace, $config);
 $fso = fopen('kl_auto_backup_and_mail_config.php', 'w');
 //写入替换后的配置文件
 fwrite($fso, $new_config);
 fclose($fso);
 $sqldump = '';
 foreach ($tables as $table) {
     $sqldump .= dataBak(DB_PREFIX . $table);
 }
 $dumpfile = '#version:emlog ' . Option::EMLOG_VERSION . "\n";
 $dumpfile .= '#date:' . gmdate('Y-m-d H:i', time() + $timezone * 3600) . "\n";
 $dumpfile .= '#tableprefix:' . DB_PREFIX . "\n";
 $dumpfile .= $sqldump;
 $dumpfile .= "\n#the end of backup";
 @($fp = fopen($filename, 'w+'));
 if ($fp) {
     @flock($fp, 3);
     if (@(!fwrite($fp, $dumpfile))) {
         @fclose($fp);
     } else {
         @fclose($fp);
         kl_auto_backup_and_mail_mail_to(KL_AUTO_BACKUP_AND_MAIL_SMTP, KL_AUTO_BACKUP_AND_MAIL_PORT, KL_AUTO_BACKUP_AND_MAIL_SENDEMAIL, KL_AUTO_BACKUP_AND_MAIL_PASSWORD, KL_AUTO_BACKUP_AND_MAIL_TOEMAIL, '您的博客自动备份数据', '附件中为您的博客' . $blogname . '的自动备份数据 :)', $blogname, $filename);
     }