PHP ile MySQL verilerini Excel'e Aktarma
Biraz önce bir iş için lazım oldu. Önceden de böyle bir şey ile uğraşmıştım ancak o sefer CVS dosyası yaratarak bu olayı çözmüştüm. Excel olarak verileri size sunuyor ancak birebir müdehale demiyorsunuz. Şimdi ise internette ararken çok daha iyi bir betik ile karşılaştım. Biraz düzenledim ve tam istediğim işi çözen bir script haline geldi.
Buyurun kodları buraya koyuyorum. Benim gibi başkasının da işine yarayabilir
$result=mysql_query("select * from tablo order by id desc");
function xlsBOF() {
echo pack("ssssss", 0x809, 0x8, 0x0, 0x10, 0x0, 0x0);
return;
}
function xlsEOF() {
echo pack("ss", 0x0A, 0x00);
return;
}
function xlsWriteNumber($Row, $Col, $Value) {
echo pack("sssss", 0x203, 14, $Row, $Col, 0x0);
echo pack("d", $Value);
return;
}
function xlsWriteLabel($Row, $Col, $Value ) {
$L = strlen($Value);
echo pack("ssssss", 0x204, 8 + $L, $Row, $Col, 0x0, $L);
echo $Value;
return;
}
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");;
header("Content-Disposition: attachment;filename=dosyaadi.xls ");
header("Content-Transfer-Encoding: binary ");
xlsBOF();
xlsWriteLabel(0,0,"Başlık");
// Make column labels. (at line 3)
xlsWriteLabel(2,0,"ID");
xlsWriteLabel(2,1,"Deneme");
$xlsRow = 3;
// Put data records from mysql by while loop.
while($row=mysql_fetch_array($result)){
xlsWriteNumber($xlsRow,0,$row[0]);
xlsWriteLabel($xlsRow,1,$row[1]);
$xlsRow++;
}
xlsEOF();
exit();


21. ARA, 2009






Sponsor Linkler
250.001 oldu lan :D
hocam sanki biraz çalışır gibi
çok ama çok düzensiz şeyler çıktı bunu eklediğim sayfada
ama herhangi bir cvs veya excel dosyası oluşturamadı
bir el atalım mı şuna
ayrıca sana cevizde destek talebinde bulunan vatandaşım ben :)
Birşeyler yaparız. Ekran görüntüsü koyabilirsen tabiki :)
http://www.tutorial5.com/content/view/159/85/
hocam şu adresteki kod süper çalışıyor
ancak sonucu sayfaya basıyor
ben ıstıyorum kı ıtıklıyaıyım bı lınke bıseylere
o da bu kod sayesınde excel dosyasına bassın
buna bır sey yapamazmıyız
hocam bende de garip karakterler bastı..
http://www.tutorialized.com/view/tutorial/Export-MySQL-to-Excel/16570
Bende de saçma sapan karakterler çıkıyo.
Asagidaki link almanca fakat kodun dili evrenseldir diyerek ilk sayfadan ikinci sayfaya kadar adimlar uygulaninca oluyor.
http://www.webmaster-portal.de/Tutorial_3_Webmaster.html
Kolay Gelsin