Merhaba,
Aşağıdaki kod sorunsuz çalışıyor
Bu kod ile hem .sql hemde .gz uzantılı dosyaların içini okuyorum burada sorun yok
Yukarıdaki kod ile $files = 'klasor/veritabani.sql'; veya $files = 'klasor/veritabani.gz'; bu şekilde çalışıyor sorun yok
Sorum şu:
Dosyaları dizi olarak vermek istiyorum ama yapamadım
Yardımcı olabilir misiniz?
$files = array("tablo1.sql", "tablo2.sql", "tablo3.sql", "tablo4.sql");
VEYA
$files = array("tablo1.gz", "tablo2.gz", "tablo3.gz", "tablo4.gz");
Aşağıdaki kod sorunsuz çalışıyor
Bu kod ile hem .sql hemde .gz uzantılı dosyaların içini okuyorum burada sorun yok
PHP:
function uzanti($text) {
$text = strtolower(pathinfo($text, PATHINFO_EXTENSION));
return $text;
}
$dosyatipi = uzanti($_POST['sqlsec']);
if($dosyatipi=='gz'){
@$lines = gzfile($_POST['sqlsec']);
}else{
@$lines = file(''.$_POST['sqlsec'].'');
}
@$database = 'Veritabanı: `'; // Veritabanı adı için yedek içinde aranacak kelime
@$search = 'TABLO_ADI '; // Tablo adı ve satır sayısı için yedek içinde aranacak kelime
@$completed = 'COMPLETED SUCCESSFULLY'; // Başarılı yedeklendiğini göstermek için aranacak kelime
$found = false;
$bulundu = false;
if(!empty($lines)){ // Okunacak dosya var mı?
foreach($lines as $line){ // Dosya satır satır okunuyor
if(strpos($line, $database) !== false){ // Yedek içinde veritabanı adını alıyoruz
$raw_data = explode("\n", $line);
$dat = explode("`", $raw_data[0]);
array_pop($dat);
$databasename = array_pop($dat);
if($databasename != $db_name){ // Karşılaştırılacak veritabanı aynı değil ise döngüyü durdur
break;
}
}
if(strpos($line, $search) !== false){ // Yedek içinden tablo adlarını alıyoruz
$found = true;
$rawdata = explode("\n", $line);
$data = explode(" ", $rawdata[0]);
$veri = explode(" ", $rawdata[0]);
$verisatir = trim(array_pop($veri));
trim(array_pop($data));
$tablename = trim(array_pop($data));
$yedektablo[$tablename] = $verisatir;
}
if(strpos($line, $completed) !== false){ // Yedek içinde sonuna eklediğimiz başarıyla yedeklendi kelimeyi aliyoruz
$bulundu = true;
}
} // foreach($lines as $line){
} // if(!empty($lines)){
Sorum şu:
Dosyaları dizi olarak vermek istiyorum ama yapamadım
Yardımcı olabilir misiniz?
$files = array("tablo1.sql", "tablo2.sql", "tablo3.sql", "tablo4.sql");
VEYA
$files = array("tablo1.gz", "tablo2.gz", "tablo3.gz", "tablo4.gz");