Autor Zpráva
panterek
Profil
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 *
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
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..

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0