我想在我的网站备份我的mysql数据库。我正在按下一个按钮,在点击之后,它通过ajax触发我的备份数据库功能,我想下载我的数据库文件的.zip
现在这里是我的代码,为什么没有出现.zip文件。它在我的ajax中说它是成功的。回复
这是我在javascript中的代码:
function auto_backup() {
$.ajax({
url: siteurl+"admin_backup/backup_db",
type: "POST",
success: function(data) {
alert("Success");
}
});
}
和我的控制器代码:
public function backup_db() {
$this->load->dbutil();
$prefs = array(
'format' => 'zip',
'filename' => 'my_db_backup.sql'
);
$backup =& $this->dbutil->backup($prefs);
$db_name = 'backup-on-'. date("Y-m-d-H-i-s") .'.zip';
$save = 'pathtobkfolder/'.$db_name;
$this->load->helper('file');
write_file($save, $backup);
$this->load->helper('download');
force_download($db_name, $backup);
}
答案 0 :(得分:1)
尝试不使用ajax它应该可以工作,据我所知下载ajax dosen&t。工作。
function auto_backup() {
window.location.href = siteurl+"admin_backup/backup_db";
}
答案 1 :(得分:0)
按如下方式直接链接到您的按钮。无需使用AJAX
href="<?php echo site_url("admin_backup/backup_db") ?>"