Uzevsi u obzir neke od Sinisinih kritika, kod sad izgleda ovako:
Kôd:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Refresh" content="2; URL=http://localhost/proj" />
<meta name="author" content="" />
<title>Backup</title>
</head>
<body>
<?php class Backup extends Controller {
function __construct() {
parent::Controller();
}
function index() {
$path = './';//directory in archive
$archive_path = 'd:/htdocs/backup/proj/';//destination directory for backup files
$date = strftime("%d-%b-%y at %Hh%M ");//date format in backup file names
$db_backup_file = $date . 'db.gz';//filename for database backup
$proj_backup_file = $date . 'proj.zip';//filename for code backup
//DB backup:
$this->load->dbutil();
$backup = &$this->dbutil->backup();
$this->load->helper('file');
write_file($archive_path . $db_backup_file, $backup);
//<-DB backup
//proj backup:
$this->load->lib('zip');
$this->zip->read_dir($path);
$date = strftime("%d-%b-%y at %Hh%M ");
$this->zip->archive($archive_path . $proj_backup_file); // Creates a file named myarchive.zip
$data = 'Done. Redirecting in 2 sec<br>
<strong>' . $db_backup_file . '</strong> - '.round((filesize($archive_path . $db_backup_file)/1024),1).' KB <br>
<strong>' . $proj_backup_file . '</strong> - '.round((filesize($archive_path . $proj_backup_file)/1024),1).' KB <br>';
$this->out->set_out($data);//display status info
//<-proj backup
}
} ?>
</body>
</html>
Kome vise odgovara moze kod da razvoji u kontroler i view.