Autor Zpráva
Kane
Profil *
Dobrý den,
přestože jsem začátečník v PHP a navíc k mému úkolu je potřeba použít také TCPDF knihovnu, podařilo se mně "sesmolit" nástroj, ve kterém zadáte informace o materiálu, provedených pracích a dalších nákladech a vyplněný formulář se pak automaticky převede do PDF. Vše je v pořádku, na Windows XP je nástroj funkční. Když ho ale vyzkouším na počítači, kde se bude používat (Windows 7), tak tam už mně to vyhazuje níže uvedené hlášení. Jsem celkem přesvědčený, že zápis foreach je napsaný špatně, hlavně by mohl být efektivnější, ale já už nevím, jak dál. Prosím pomozte, děkuji za každý poznatek

foreach( $_POST['mat_tit'] as $key => $_POST['mat_tit'] ) {
    $mat_list_data = '
    <table cellpadding="1" cellspacing="0">
        <tr>
            <td width="100%">'.$_POST['mat_tit'].'</td>
        </tr>
    </table>
    <table cellpadding="2" cellspacing="2">
        <tr>
            <td width="13%">'.$mat_up[$key].'</td>
            <td width="5%">Kč</td>
            <td width="12%">'.$mat_q[$key].'</td>
            <td width="5%">'.$mat_ut[$key].'</td>
            <td width="5%">'.$mat_c[$key].'</td>
            <td width="13%">'.$mat_isum[$key].'</td>
            <td width="5%">Kč</td>
            <td width="6%">'.$mat_vv[$key].'</td>
            <td width="13%">'.$mat_vs[$key].'</td>
            <td width="5%">Kč</td>
            <td width="13%">'.$mat_itot[$key].'</td>
            <th width="5%">Kč</th>
        </tr>
    </table>';
}

// print $mat_list_data
$pdf->writeHTML($mat_list_data, true, true, false, false, '');


Notice: Undefined index: startcolumn in C:\xampp\htdocs\tcpdf\tcpdf.php on line 19345
Notice: Undefined index: startx in C:\xampp\htdocs\tcpdf\tcpdf.php on line 19346
Notice: Undefined index: startpage in C:\xampp\htdocs\tcpdf\tcpdf.php on line 19349
Notice: Undefined index: startpage in C:\xampp\htdocs\tcpdf\tcpdf.php on line 19352
Notice: Undefined index: in C:\xampp\htdocs\tcpdf\tcpdf.php on line 19352
Notice: Undefined index: startpage in C:\xampp\htdocs\tcpdf\tcpdf.php on line 19353
Notice: Undefined index: in C:\xampp\htdocs\tcpdf\tcpdf.php on line 19353
Notice: Undefined index: startpage in C:\xampp\htdocs\tcpdf\tcpdf.php on line 19385
Notice: Undefined index: startx in C:\xampp\htdocs\tcpdf\tcpdf.php on line 19605
TCPDF ERROR: Some data has already been output, can't send PDF file


Panebože, já tomu fakt nerozumím, nikdo není schopný poradit začátečníkům? Všude ignorace, kašlu na to. Jistě se tu ještě někdy ukážu
Joker
Profil
Kane:
Celé mi to nedává smysl.
Co ten kód má dělat?
Tori
Profil
Kane:
Nedává to smysl hlavně kvůli tomu, že procházíte cyklem nějaká data, přiřazujete je do proměnné a tu proměnnou si při každém průchodu cyklem přepíšete.
Jinak jde o nějakou chybu uvnitř TCPDF, která spočívá v tom, že TCPDF očekává nějakou strukturu pole, a dostane jiné pole (chybí mu očekávané prvky). Takže si musíte otevřít zdroják tcpdf.php a zjistit, co se tam děje - jestli je to chyba na vaší straně (posíláte neočekávaná data) nebo na straně TCPDF (neošetřené E_NOTICE). V prvním případě opravíte svůj kód, v druhém případě by bylo ideální poslat autorovi pull request s opravenou chybou, anebo můžete použít pštrosí přístup a ve skriptu vyrábějícím PDFko zakázat zobrazování chyb typu E_NOTICE (anebo využít ob_start a příbuzné funkce). Každopádně ale nemůžete snad očekávat, že by někdo studovat zdroják TCPDF, který má 24000 řádků, když navíc není jisté, že chyba je tam a ne ve vašem kódu.
Joker
Profil
Tori:
Nedává to smysl hlavně kvůli tomu, že procházíte cyklem nějaká data, přiřazujete je do proměnné a tu proměnnou si při každém průchodu cyklem přepíšete.
Nejen to.
Na začátku i přepíše to co prochází první položkou toho, co prochází.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

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