Ben birden fazla CSV dosyalarını benim MySQL veritabanı veri vermek ve sonra bunları GZIP çalışıyorum.
Ben karmaşık bir CSV dosyasına ihracat yapmak sorunları bir çift var ...
- Çeşitli alanlar (10) 1 CSV dosyasında olması gerekir
- Diğer alanlar (multiple!) tefrika olduğunu ve CSV dosyasına dahil olmayan diğer iki tefrika alanları ile farklı bir CSV dosyası olarak ihraç edilmesi gerekiyor.
Ne yapmak istediğinizi bir gzip dosyasında oluşturulan tüm bu CSV dosyaları olduğunu ... İşte ben bugüne kadar ne var! Kullanıcının, vermek istediğiniz dosya ile farklı onay kutularını kontrol eder bunu ne olur. Sonra onun her dosya farklı bir SELECT sorgusu ve alan adları olan bu dosyaya geçti. Ben bile henüz seri hale getirilmiş verileri ile uğraşmak başlamış değil ... Ben bunu yapmak için gidiyorum nasıl hiçbir fikrim yok. Daha sonra CSV dosyasını verir ve ben bunu yapabilirim bile bilmiyorum ... bir gzip ihraç bekleyen bir diziye bu dosyayı yerleştirin.
Herhangi bir öneri veya bir yardım büyük mutluluk duyacağız!
$files = array();
if(in_array("general", $_POST['exportid'])){
$files[] = CSVoutput("SELECT timestamp, id, monday, tuesday, wednesday, thursday, friday, saturday, sunday, records, 01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 23, 24 FROM hourly", array(timestamp, id, monday, tuesday, wednesday, thursday, friday, saturday, sunday, records, 01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 23, 24));
}
function CSVoutput($query, $fields){
$rsSearchResults = mysql_query($query) or die(mysql_error());
$out = '';
$columns = count($fields);
// Put the name of all fields
for ($i = 0; $i < $columns; $i++) {
$l= $fields[$i];
$out .= '"'.$l.'",';
}
$out .="\n";
// Add all values in the table
while ($l = mysql_fetch_array($rsSearchResults)) {
for ($i = 0; $i < $columns; $i++) {
$out .='"'.$l["$i"].'",';
}
$out .="\n";
}
return $out;
}
exit;