çalıştırdığımda Zip dosyası oluşturulamadı diyor.
<?php
// Yedekleme işlemi için gereken değişkenleri tanımlayın
$backupDir = "C:\xampp\htdocs\depoyedek"; // Yedekleme dosyalarının kaydedileceği klasör
$dbHost = "localhost"; // Veritabanı sunucusu adresi
$dbName = "ware"; // Veritabanı adı
$dbUser = "root"; // Veritabanı kullanıcı adı
$dbPass = ""; // Veritabanı şifresi
$webDir = "C:\xampp\htdocs\depo"; // Web sitesinin dosyalarının bulunduğu dizin
// Yedekleme dosyalarının adını oluşturun
$dbBackupFile = $backupDir . "\\" . $dbName . "_" . date("Y-m-d-H-i-s") . ".sql";
$webBackupFile = $backupDir . "\\" . "web_" . date("Y-m-d-H-i-s") . ".zip";
// Veritabanı yedekleme işlemini gerçekleştirin
exec("mysqldump --user=$dbUser --password=$dbPass --host=$dbHost $dbName > $dbBackupFile");
// Web sitesinin dosyalarını yedekleyin
$zip = new ZipArchive();
if ($zip->open($webBackupFile, ZipArchive::CREATE | ZipArchive::OVERWRITE) !== true) {
die('Zip dosyası oluşturulamadı');
}
$iterator = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($webDir));
foreach ($iterator as $key => $value) {
if (!$value->isDir()) {
$filePath = $value->getRealPath();
$relativePath = substr($filePath, strlen($webDir) + 1);
$zip->addFile($filePath, $relativePath);
}
}
$zip->close();
// Yedekleme işlemi başarılıysa, mesajı ekrana yazdırın
if (file_exists($dbBackupFile) && file_exists($webBackupFile)) {
echo "Yedekleme işlemi başarılı! Veritabanı yedek dosyası: $dbBackupFile, Web sitesi yedek dosyası: $webBackupFile";
} else {
echo "Yedekleme işlemi başarısız!";
}
?>