Stránka: 1 z 1
| [ Príspevkov: 21 ] | |
| Autor | Správa |
|---|
Registrovaný: 16.01.08 Prihlásený: 27.03.13 Príspevky: 641 Témy: 144 | 144 Bydlisko: Žilina |
chcem generovat PDF zo sablony pomocou nasledujuceho kodu:
Kód: <?php set_time_limit(180); $id=$_GET['id']; function pdf_replace($pattern, $replacement, $string) { $len=strlen($pattern); $regexp=''; for ($i=0; $i<$len; $i++) { $regexp.=$pattern[$i]; if ($i<$len-1) { $regexp.="(\)\-{0,1}[0-9]*\(){0,1}"; } return ereg_replace($regexp, $replacement, $string); } if (isset($ico)) { header ('Content-Disposition: filename=dokument.pdf'); header ('Content-type: application/pdf'); $filename='sablona.pdf'; $fp=fopen($filename,'r'); $output=fread($fp,filesize($filename)); fclose($fp) $output=pdf_replace('<<id>>',$id,$output); echo $output; } ?>
vyhadzuje mi to vsak chybu:
Citácia: Parse error: syntax error, unexpected T_VARIABLE in /xxx/xxx/public/www_root/pdf.php on line 25
(riadok 25 je $output=pdf_replace('<<id>>',$id,$output); )
pripadne, ako inak generovat PDF zo sablony?
DIK.
|
|
Registrovaný: 27.07.07 Príspevky: 3948 Témy: 51 | 51 Bydlisko: Bratislava |
na riadku pred ti chyba bodkociarka...
_________________ NTB: Acer Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB | RAM: 8GB DDR3 1066 MHz | HDD: 1TB SSD WD BLUE |
|
Registrovaný: 16.01.08 Prihlásený: 27.03.13 Príspevky: 641 Témy: 144 | 144 Bydlisko: Žilina |
jasne bodkociarka
to som uz dal prec, no teraz to nerobi vobec nic...
|
|
Registrovaný: 09.02.07 Prihlásený: 26.01.15 Príspevky: 257 Témy: 20 | 20 |
Ja troska nechapem z akej sablony chces generovat pdf.
Na pracu s pdf by som odporucil fpdf:
http://www.fpdf.org/
Ja som s tim pracoval pred niekolkymi tyzdnami, vytvaral som jeden pdf dokument a je to naozaj hracka, ked sa s tym clovek pohra. Netreba menit ziadnu konfiguraciu na servri a pdf sa daju pekne generovat.
|
|
Registrovaný: 16.01.08 Prihlásený: 27.03.13 Príspevky: 641 Témy: 144 | 144 Bydlisko: Žilina |
vyriesil som to tym, ze negenerujem priamo PDF ale HTML a vyslednu stranku si moze uzivatel vytlacit. zistil som totiz, ze server kde hostujem nema zrejme PDFlib.
|
|
Registrovaný: 09.02.07 Prihlásený: 26.01.15 Príspevky: 257 Témy: 20 | 20 |
ano, toto moze byt tiez riesenie, cez css sa da pekne urobit printer friendly page, ale ako som pisal napr s fpdf nepotrebujes ziadnu kniznicu pdflib na servri a lahko dokazes vytvorit pdf dokumenty.
Je to na tebe.
|
|
Registrovaný: 13.11.07 Prihlásený: 06.03.08 Príspevky: 431 Témy: 28 | 28 |
hmm, dobry skript
vola sa to cez
Kód: <script type="text/javascript"> <!-- if(document.location.href.indexOf('http:')==0) { document.write("<a href='tuto1.php'>Test pdf<\/a><\/p>"); } //--> </script>
ako mam urobit, aby sa vytvorilo pdf nejakeho konkretneho clanku, ktory sa vola z mysql?
|
|
Registrovaný: 13.11.07 Prihlásený: 06.03.08 Príspevky: 431 Témy: 28 | 28 |
Kód: <?php $db = @MySQL_Connect("localhost", "$meno", "$heslo"); $ok = @MySQL_Select_DB("$dbname");
$pdf=new FPDF(); $pdf->AddPage(); $pdf->SetFont('Arial','B',16);
$srch = MySQL_Query("SELECT id,nazov,popis,datum,url FROM news WHERE id = $id;"); $pdf->Cell(120,8, iconv("UTF-8", "ISO-8859-2", $zaznam["id"]),1);
$pdf->Output(); ?>
neviete niekto ako to upravit, aby mi to generovalo php zo zaznamu?
|
|
Registrovaný: 21.10.08 Prihlásený: 18.12.19 Príspevky: 198 Témy: 74 | 74 Bydlisko: Nitra | |
Registrovaný: 30.05.06 Prihlásený: 08.10.14 Príspevky: 1756 Témy: 35 | 35 Bydlisko: BA - WESTSIDE |
Pozri si http://www.fpdf.org/en/FAQ.php ku koncu stránky píšu, že máš použiť cp1250 a na pozícii 128 je ten znak. Teda musíš tomu pdfku dať font s € znakom a kódovať cp1250 (podľa všetkého Unicode nepodporujú).
EDIT: teraz som si to lepšie pozrel, treba to spraviť takto: http://www.fpdf.org/en/FAQ.php#q8
_________________
A. S. Tanenbaum píše: The terms LF, MF, and HF refer to low, medium, and high frequency, respectively. Clearly, when the names were assigned, nobody expected to go above 10 MHz, so the higher bands were later named the Very, Ultra, Super, Extremely, and Tremendously High Frequency bands. Beyond that there are no names, but Incredibly, Astonishingly, and Prodigiously high frequency (IHF, AHF, and PHF) would sound nice. |
|
Registrovaný: 21.10.08 Prihlásený: 18.12.19 Príspevky: 198 Témy: 74 | 74 Bydlisko: Nitra |
Dokonale funguje,. fakt dik
|
|
Registrovaný: 21.10.08 Prihlásený: 18.12.19 Príspevky: 198 Témy: 74 | 74 Bydlisko: Nitra |
NEchce mi zobrazovat "Š" ,. "á" mi zobrazuje,. ale mekcene nie,.
vie niekto jak to?? idem mi 'á' bo som dal,. utf8_decode() ,.ale nejde mi čš atd.
|
|
Registrovaný: 30.05.06 Prihlásený: 08.10.14 Príspevky: 1756 Témy: 35 | 35 Bydlisko: BA - WESTSIDE |
http://www.fpdf.org/en/FAQ.php#q7
Citácia: Nepoužívajte kódovanie UTF-8. Štandardné FPDF fonty používajú ISO-8859-1 alebo Windows-1252. Text v UTF-8 môžete skonvertovať do ISO-8859-1 použitím utf8_decode(): Kód: $str = utf8_decode($str); Lenže niektoré znaky, napr. znak Eura, nebudú skonvertované správne. Ak máte na servri nainštalované rozšírenie iconv, správny spôsob ako vykonať konverziu je tento: Kód: $str = iconv('UTF-8', 'windows-1250', $str); Musíš si však uvedomiť jedno - UTF-8 dokáže kódovať niekoľkonásobne viac rôznych znakov ako ISO a Windows kódovania, preto ani iconv nebude vedieť skonvertovať úplne každý znak.
_________________
A. S. Tanenbaum píše: The terms LF, MF, and HF refer to low, medium, and high frequency, respectively. Clearly, when the names were assigned, nobody expected to go above 10 MHz, so the higher bands were later named the Very, Ultra, Super, Extremely, and Tremendously High Frequency bands. Beyond that there are no names, but Incredibly, Astonishingly, and Prodigiously high frequency (IHF, AHF, and PHF) would sound nice. |
|
Registrovaný: 21.10.08 Prihlásený: 18.12.19 Príspevky: 198 Témy: 74 | 74 Bydlisko: Nitra |
A to znamena co? ze do toho .pdf "ščž" nedostanem?
|
|
Registrovaný: 30.05.06 Prihlásený: 08.10.14 Príspevky: 1756 Témy: 35 | 35 Bydlisko: BA - WESTSIDE |
Dostaneš, ale nie ako UTF-8, ale ako Windows-1250 alebo ISO-8859-2. Tj. vstupný text, ktorý chceš dať do pdfka musí byť v tomto kódovaní.
_________________
A. S. Tanenbaum píše: The terms LF, MF, and HF refer to low, medium, and high frequency, respectively. Clearly, when the names were assigned, nobody expected to go above 10 MHz, so the higher bands were later named the Very, Ultra, Super, Extremely, and Tremendously High Frequency bands. Beyond that there are no names, but Incredibly, Astonishingly, and Prodigiously high frequency (IHF, AHF, and PHF) would sound nice. |
|
Registrovaný: 21.10.08 Prihlásený: 18.12.19 Príspevky: 198 Témy: 74 | 74 Bydlisko: Nitra |
p360t píše: http://www.fpdf.org/en/FAQ.php#q7 Citácia: Nepoužívajte kódovanie UTF-8. Štandardné FPDF fonty používajú ISO-8859-1 alebo Windows-1252. Text v UTF-8 môžete skonvertovať do ISO-8859-1 použitím utf8_decode(): Kód: $str = utf8_decode($str); Lenže niektoré znaky, napr. znak Eura, nebudú skonvertované správne. Ak máte na servri nainštalované rozšírenie iconv, správny spôsob ako vykonať konverziu je tento: Kód: $str = iconv('UTF-8', 'windows-1250', $str); Musíš si však uvedomiť jedno - UTF-8 dokáže kódovať niekoľkonásobne viac rôznych znakov ako ISO a Windows kódovania, preto ani iconv nebude vedieť skonvertovať úplne každý znak.
A teraz problem, neviem preco mi zobrazi znaky áýíé aj dokonca šž ale čť mi nezobbrazi dá miesto toho e s dlznom naopak,. ?!
co v takom pripipade?
|
|
Registrovaný: 30.05.06 Prihlásený: 08.10.14 Príspevky: 1756 Témy: 35 | 35 Bydlisko: BA - WESTSIDE |
Neviem, treba experimentovať. Možno je problém v tom, že ten skript nie je v správnom kódovaní. Skús ho raz uložiť v UTF-8 a raz vo Windows-1250. A ak máš v databázi dáta v UTF-8, tak do windows-1250 skonvertuj len tie.
_________________
A. S. Tanenbaum píše: The terms LF, MF, and HF refer to low, medium, and high frequency, respectively. Clearly, when the names were assigned, nobody expected to go above 10 MHz, so the higher bands were later named the Very, Ultra, Super, Extremely, and Tremendously High Frequency bands. Beyond that there are no names, but Incredibly, Astonishingly, and Prodigiously high frequency (IHF, AHF, and PHF) would sound nice. |
|
Registrovaný: 21.10.08 Prihlásený: 18.12.19 Príspevky: 198 Témy: 74 | 74 Bydlisko: Nitra |
Ja som na to v noci dosiel,. po vseljakych zmenach nic nefungovalo. napokon som pridal novy font. a az nasledne zobrazovalo aj "č" ,.
za pomoci iconV() funkcie,.
ale aj tak dik
|
|
Registrovaný: 25.12.09 Prihlásený: 03.07.11 Príspevky: 133 Témy: 39 | 39 |
p360t píše: Dostaneš, ale nie ako UTF-8, ale ako Windows-1250 alebo ISO-8859-2. Tj. vstupný text, ktorý chceš dať do pdfka musí byť v tomto kódovaní.
Ja pouzivam Windows-1250 a robi mi to presne tie chyby. Asi si myslel Windows-1252 ale ako to mam prekonvertovat?
|
|
Registrovaný: 21.02.06 Prihlásený: 08.12.14 Príspevky: 5403 Témy: 30 | 30 Bydlisko: Bratislava |
Nie, myslel windows-1250. Všetko máš v tejto téme, stačí čítať.
_________________ Neradím a nekomunikujem cez SS, ak niečo potrebujete, máte iné možnosti: Ak vám zmizla téma, alebo sa vám niečo nepáči. Ak potrebujete nahlásiť príspevok/človeka, reportujte ho. Ak máte s niečim problém, riešte to v danej téme. |
|
Registrovaný: 25.12.09 Prihlásený: 03.07.11 Príspevky: 133 Témy: 39 | 39 |
Preco potom v dokumentacii je napisane:
Citácia: Don't use UTF-8 encoding. Standard FPDF fonts use ISO-8859-1 or Windows-1252. It is possible to perform a conversion to ISO-8859-1 with utf8_decode(): ?
|
|
Stránka: 1 z 1
| [ Príspevkov: 21 ] | |
|