Autor | Zpráva | ||
---|---|---|---|
panterek Profil |
#1 · Zasláno: 22. 10. 2011, 10:32:55
Zdravím,
našel jsem krásný kód na tento převod a rád bych u něj zůstal..má jednu vadu, po otevření myslím hned každý pochopí :-) http://test.operacni-systemy.eu/test/test2.php Jde jak jinak než o diakritiku a za boha nevím, jak to vyřešit :-( Celý kód: $result= mysql_query("SELECT * FROM $table WHERE date>='2011-07-01' AND date<='2011-07-31' AND uhrazene='0' ORDER BY date 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-Type: application/vnd.ms-excel; charset=utf-8"); header("Content-type: application/x-msexcel; charset=utf-8"); header("Content-Disposition: attachment;filename=test.xls"); header("Content-Transfer-Encoding: binary "); xlsBOF(); xlsWriteLabel(0,0,"Var. symbol"); xlsWriteLabel(0,1,"Jméno"); xlsWriteLabel(0,2,"Příjmení"); xlsWriteLabel(0,3,"Rodné číslo"); xlsWriteLabel(0,4,"Datum nar."); xlsWriteLabel(0,5,"Ulice"); xlsWriteLabel(0,6,"č.p/č.o"); xlsWriteLabel(0,7,"Obec"); xlsWriteLabel(0,8,"PSČ"); xlsWriteLabel(0,9,"Jízdné"); xlsWriteLabel(0,10,"Přirážka"); xlsWriteLabel(0,11,"Dluh"); xlsWriteLabel(0,12,"Datum_čas"); xlsWriteLabel(0,13,"evid.č/č.zápisu"); $xlsRow = 1; while($row=mysql_fetch_array($result)) { xlsWriteNumber($xlsRow,0,$row['doklad']); xlsWriteLabel($xlsRow,1,$row['name']); xlsWriteLabel($xlsRow,2,$row['surname']); xlsWriteLabel($xlsRow,3,$row['born']); xlsWriteLabel($xlsRow,4,$row['born']); xlsWriteLabel($xlsRow,5,$row['address']); xlsWriteLabel($xlsRow,6,$row['cp_co']); xlsWriteLabel($xlsRow,7,$row['address2']); xlsWriteLabel($xlsRow,8,$row['psc']); xlsWriteLabel($xlsRow,9,$row['jizdne']); xlsWriteLabel($xlsRow,10,$row['castka']); xlsWriteLabel($xlsRow,11,$row['dluh']); xlsWriteLabel($xlsRow,12,$row['date']); xlsWriteLabel($xlsRow,13,$row['num_doklad']); $xlsRow++; } xlsEOF(); Díky všem za případné rady... |
||
truncate_table Profil * |
#2 · Zasláno: 24. 10. 2011, 20:43:19
Nemohlo by se jednat o kódování tabulky přímo v MySQL?
Zkus si data zobrazit normálně do html, jestli bude problém stejný.... Pokud ano, musíš změnit kódování v té tabulce... Často jsem s tím měl problém |
||
panterek Profil |
#3 · Zasláno: 26. 10. 2011, 21:05:07
Problém by stejný byl, pokud bych samozřejmě neměl header jako utf8 ..problém kódování to asi bude, ale myslel jsem, že by se to dalo nějak ošetřit ...aby to excel otevřel taky třeba v utf8 nebo tak něco, ale prostě ne a ne..
|
||
Časová prodleva: 12 let
|
0