abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 18:11 | IT novinky

    Dnes a zítra probíhá vývojářská konference Google I/O 2025. Sledovat lze na YouTube a na síti 𝕏 (#GoogleIO).

    Ladislav Hagara | Komentářů: 0
    dnes 15:22 | Komunita

    V Bostonu probíhá konference Red Hat Summit 2025. Vybrané přednášky lze sledovat na YouTube. Dění lze sledovat na síti 𝕏 (#RHSummit).

    Ladislav Hagara | Komentářů: 0
    dnes 15:00 | Nová verze

    Společnost Red Hat oficiálně oznámila vydání Red Hat Enterprise Linuxu 10. Vedle nových vlastností přináší také aktualizaci ovladačů a předběžné ukázky budoucích technologií. Podrobnosti v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 1
    dnes 12:22 | Pozvánky

    Tuto sobotu 24. května se koná historicky první komunitní den projektu Home Assistant. Zváni jsou všichni příznivci, nadšenci a uživatelé tohoto projektu. Pro účast je potřebná registrace. Odkazy na akce v Praze a v Bratislavě.

    jose17 | Komentářů: 0
    dnes 04:44 | IT novinky

    Troy Hunt představil Have I Been Pwned 2.0, tj. nový vylepšený web služby, kde si uživatelé mohou zkontrolovat, zda se jejich hesla a osobní údaje neobjevili v únicích dat a případně se nechat na další úniky upozorňovat.

    Ladislav Hagara | Komentářů: 13
    včera 23:22 | Zajímavý software

    Microsoft představil open source textový editor Edit bežící v terminálu. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

    Ladislav Hagara | Komentářů: 7
    včera 22:22 | Zajímavý software

    V Seattlu a také online probíhá konference Microsoft Build 2025. Microsoft představuje své novinky. Windows Subsystem for Linux je nově open source. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

    Ladislav Hagara | Komentářů: 0
    včera 13:11 | Zajímavý článek

    Z příspěvku Turris Sentinel – co přinesl rok 2024 na blogu CZ.NIC: "Za poslední rok (únor 2024 – únor 2025) jsme zachytili 8,3 miliardy incidentů a to z 232 zemí a z jejich závislých území. Tyto útoky přišly od 6,2 milionu útočníků (respektive unikátních adres). SMTP minipot je stále nejlákavější pastí, zhruba 79 % útoků bylo směřováno na tento minipot, 16 % útoků směřovalo na minipot Telnet, 3 % útoků směřovaly na minipot HTTP a 2 % na minipot FTP. Dále jsme zaznamenali 3,2 milionu unikátních hesel a 318 tisíc unikátních loginů, které útočníci zkoušeli."

    Ladislav Hagara | Komentářů: 1
    včera 12:44 | Nová verze

    Byla vydána (Mastodon, 𝕏) nová verze 3.0.4 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP je již k dispozici také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    včera 12:33 | Nová verze

    Byla vydána nová stabilní verze 7.4 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 136. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    Jaký je váš oblíbený skriptovací jazyk?
     (60%)
     (23%)
     (9%)
     (2%)
     (0%)
     (0%)
     (6%)
    Celkem 47 hlasů
     Komentářů: 5, poslední dnes 20:57
    Rozcestník

    PHP: plnění šablony a její tisk

    25.6.2008 14:51 | Přečteno: 2817× | Linux

    Takže, tohle není žádný objevný příspěvek, ale dotaz. Důvod proč je to tady a ne v poradně je, jak jinak, ten, že nechci aby mi to nějaký béčko zamknulo s tím, že se nejedná o Linuxový problém.

    Co bych potřeboval: mám prodejní systém napsaný v PHP a SAPu jako backendu. K tomu hromada JavaScriptu. Do systému se zadávají klienti, různé údaje ohledně jejich koupě atd. Ve výsledku se tyto údaje mají použít k naplnění šablony smlouvy a následně se tato vyplněná šablona vytiskne.

    V současné době to řeším tak, že šablonu ve Wordu, kterou mi připraví prodejkyně, převedu (Uložit jako...) do HTML kódu. Tento HTML kód naplním trochou PHP, které si ze SAPu nasosá data a následně celé toto vyplněné HTML pošle jakože RTF dokument. Ten, jakožto zasociovaný s Wordem se v tomto otevře, prodejkyně má možnost případně něco doupravit, a následně jej vytiskne. V čem je problém s tímto (ne)dokonalým přístupem? V tom, že jelikož je to celé v podstatě HTML stránka, formátování je nevalné. Ono jde v de facto jen o mezeru sem, mezeru tam, ale pokud má být něco zarovnáno do sloupečku a někde mezírka chybí, zvlášt na smlouvě za pár mega to nevypadá dobře.

    Tudíž potřebuji poradit. Neměl někdy někdo stejný problém, jak plnit šablonu daty v PHP systému tak, aby byla následně ready-to-print? Další můj nápad byl ten, že bych šablonu napsal v TeXu a data do toho doplnil na způsob preg_replace atd. Tím bych se zbavil problému s nekvalitním výstupem, na druhou stranu šablony se mění cca 4x do roka, každá má řádově 20 stran a prodejkyně to neumí, tudíž bych to musel dělat já. Což dělat nebudu. Pokud má někdo nějakou radu, sem s ní prosím.

           

    Hodnocení: 0 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    25.6.2008 14:59 Jan Včelák | skóre: 28 | blog: Fcelda
    Rozbalit Rozbalit vše Re: PHP: plnění šablony a její tisk
    Nevim, jak moc jsou ty sablony krkolomny a slozity, ale jeste se jenom jedna o nejaka policka, ktera se museji vyplnit + nejake doprovodne texty, tak by nemusel byt problem si napsat v PHP takovej jednoduchej editor na ty formulare. Pridej policko, odeber policko, posun policko. Napada me si sablonu formulare jako takovou ukladat jako pole s nejakym vlastnim formatem a pomoci serializace si to pak ukladat kam chcete. S tim polem se pracuje relativne pohodlne.

    No a pak z toho muzou lezt treba PDF.
    25.6.2008 15:03 pasmen | skóre: 45 | blog: glob | Praha
    Rozbalit Rozbalit vše Re: PHP: plnění šablony a její tisk
    Šablony jsou právě celkem hodně složité, nejjednodušším případem je rezervační smlouva na byt. Ta má sice jen pět stran, ale obsahuje sakra hodně údajů, které se tahají (výměry bytu, ceny, výpis z OR, ...). Nejhorší je hlavička, kde se vyplňují budoucí kupující s údaji typu jméno, adresa, datum narození, bankovní spojení atd. Přičemž počet klientů je proměnlivý.
    25.6.2008 15:10 Chocolate Bear | blog: Chocolate Bear
    Rozbalit Rozbalit vše Re: PHP: plnění šablony a její tisk
    Důvod proč je to tady a ne v poradně je, jak jinak, ten, že nechci aby mi to nějaký béčko zamknulo s tím, že se nejedná o Linuxový problém.
    OMG, prosím řekni, že jméno tvého blogu nemá nic společného s touhle Elliot.
    THIS IS SPARTA!
    25.6.2008 15:13 pasmen | skóre: 45 | blog: glob | Praha
    Rozbalit Rozbalit vše Re: PHP: plnění šablony a její tisk
    Kdeže, má to spojitost s tímto, a to zcela vážně.
    25.6.2008 15:15 Jiří Veselský | skóre: 30 | blog: Jirkovo | Ostrava
    Rozbalit Rozbalit vše Re: PHP: plnění šablony a její tisk

    My máme něco podobného vyřešeno nikoliv přes Word -> HTML -> Word -> RTF nebo jak to bylo :-), ale pomocí OpenOffice.

    V OO jsou udělané šablony, na místech, kde se cosi kdesi doplňuje jsou dohodnuté sekvence (např. #JMENO#). Příslušné šablony jsou nahrané na serveru a využívá se toho, že OO ukládá defacto v zazipovaném XML. Takže PHP skript si šablonu odzipuje, udělá potřebné preg_replacy, respektive dogeneruje XML kódy různých tabulek a podobně, výsledné XML zase zazipuje a nabídne uživateli jako OO dokument.

    Výhodou oproti tomu vašemu řešení je, že se "formátování" neřeší v HTML nýbrž v nativní OO formátu, takže je to bezproblémové. Nevýhodou je, že byla skutečně nezanedbatelná onanie vyladit manipulaci s tím XML formátem. Nicméně, když se to jednou udělalo, dají se ty šablony (v rozumné míře) modifikovat, aniž by se muselo sahat do výkonného kódu.

    25.6.2008 15:21 pasmen | skóre: 45 | blog: glob | Praha
    Rozbalit Rozbalit vše Re: PHP: plnění šablony a její tisk
    To zní dobře, s OO bych pracoval daleko raději než s Wordem. Můžu se jen zeptat, kde jsi čerpal informace o formátu OO pro tyhle účely? Když nic tak to vygooglím (snad), ale pokud nebudu muset objevovat kolo, bylo by to fajn :-)
    25.6.2008 16:41 vatoz | skóre: 6 | blog: Vatoz
    Rozbalit Rozbalit vše Re: PHP: plnění šablony a její tisk
    Příloha:
    U nás v práci máme podobný systém řešený pomocí Smarty - do zdrojového open office souboru jsme normálně ve Writeru doplnili smarty syntaxí výpis polí Pak jsme oo soubor přejmenovali na zip, v souboru content.xml opravili několik málo znaků které v xml být nemůžou ale smarty je potřebuje ( snad ampersand a uvozovky). Soubor pak prochází skrz smarty na základě aktuálních dat. Na závěr pak soubor vzniklý projetím smarty sbalíme do zipu spolu se všemi soubory z původního zipu a posíláme se správným mime typem. Funguje to hezky, dokonce nstejným způsobem do některých souborů dáváme i obrázky a pak není problém vyplivnout i třeba 300 MB velký OO soubor.

    Jako přílohu posílám původní odt soubor (přejmenovaný na zip, protože abclinuxu nějak nemá rádo správný mimetyp). Dá se otevřít jak jako zip, tak jako odt (když se přejmenuje zpátky)
    Těší mě panora.ma
    25.6.2008 18:08 pasmen | skóre: 45 | blog: glob | Praha
    Rozbalit Rozbalit vše Re: PHP: plnění šablony a její tisk
    Super, díky moc. Vůbec jsem nevěděl, že ODT je v podstatě zazipovaný obsah... Blbec já :-) V každém případě ještě jednou díky, tohle vypadá moc hezky.
    25.6.2008 15:26 Messa | skóre: 39 | blog: Messa
    Rozbalit Rozbalit vše Re: PHP: plnění šablony a její tisk
    MS Office by měly mít nějaké API, přes které by mělo jít přidat do wordového dokumentu cokoliv. Snad nějaké COM nebo tak něco, nevím, nedělám v tom. Možná to půjde i v PHP. Taky si pamatuji, že se v officech dá nějak skriptovat (VB?), takže by si to ty údaje mohlo vytáhnout samo. Nebo dokonce, když už je (nebo bude, nesleduji) teď ten wordovský formát standardizovaný a otevřený, pokusit se zasáhnout přímo do jeho zdrojáku :-)

    Nebo naučit prodejkyni TeX, třeba se jí to bude i líbit :-) a smlouva za pár mega bude konečně i dobře vypadat (pls no flame, některým lidem by nevadila ani smlouva vysázená v Comic Sans, jiné naopak chyba v mikrometrech praští do oka na první pohled).
    25.6.2008 15:47 pasmen | skóre: 45 | blog: glob | Praha
    Rozbalit Rozbalit vše Re: PHP: plnění šablony a její tisk
    Do Wordu lze pomocí COM rozhraní zapisovat, to ano. Problém je, že v tom případě by musel Apache + PHP běžet na Windows. Nebo se pletu? A to akceptovat nehodlám :-) VB skript by byl fajn, ale pochybuju, že existuje VB konektor pro SAP. I když, je možné že jo. Nicméně nejde jen o získání obsahu políčka. Jde o to, že na základě těch dat musím být schopen přidat popř. odebrat i celý kus textu, např. odstavec. Nevím jak bych takhle pochodil s VB. TeX bych jí nenaučil. Ne že by byla blbá, v tomhle případě naopak. Problém je v tom, že řekne (a poprávu), že tohle není její práce a že je placená za něco jiného. Opět, má pravdu. A ano, rozhozené formátování vadí, viděl jsem exoty kteří jsou schopni na základě takovýhle blbosti neuzavřít koupi za třeba deset milionů.
    Daniel Kvasnička ml. avatar 25.6.2008 16:48 Daniel Kvasnička ml. | skóre: 52 | blog: The Joys and Sorrows of Being an IT Freak | Ostrava
    Rozbalit Rozbalit vše Re: PHP: plnění šablony a její tisk
    IMHO neni co resit. Z databaze pujde XML, XSLT sablona z toho udela content.xml a ten se s predpripravenym zbytkem zazipuje do ODT. Popripade muzes ty data do sablony dostat jinak nez XSLT, ale tohle mi pripadne jako nejlepsi.

    Pokud na druhe strane nechteji pouzivat OOo, muzes zkusit http://odf-converter.sourceforge.net/

    Dokumentaci ti budiz specka ODF a volne dostupna e-kniha OASIS OpenDocument Essentials.

    Kdyby na druhe strane vylozene nechteli ODF, poradil bych ti jeste OOXML a nejaky plugin pro nej do starsiho Wordu. Nicmene vzhledem k soucasnemu nejistemu postoji samotneho MS vuci OOXML (tedy alespon navenek...) si nejsem jisty, jak moc perspektivni reseni by to bylo.
    FSF: “screw you for not wanting the stuff we produce”, People: “screw you for not producing the stuff we want."
    Daniel Kvasnička ml. avatar 25.6.2008 17:16 Daniel Kvasnička ml. | skóre: 52 | blog: The Joys and Sorrows of Being an IT Freak | Ostrava
    Rozbalit Rozbalit vše Re: PHP: plnění šablony a její tisk
    Kdyz tu nekdo doporucoval Smarty, tak ja doporucim jeste PHPTAL (klon Zope TAL pro PHP), ktery na rozdil od XSLT nevyzaduje vstup jako XML a tim setri nejaky cas pri zpracovani, ale zaroven stejne jako XSLT zajisti validitu XML vystupu (na rozdil od Smarty).
    FSF: “screw you for not wanting the stuff we produce”, People: “screw you for not producing the stuff we want."
    25.6.2008 18:11 pasmen | skóre: 45 | blog: glob | Praha
    Rozbalit Rozbalit vše Re: PHP: plnění šablony a její tisk
    Moc díky. O XML a XSLT toho vím minimum a času na dokončení o nic víc. Zkusím se na to podívat, ale spíš bych to viděl, že teď to udělám prostě nějak (kouknu na strukturu ODT, jak by tam šlo data alespoň nějak dostat) a pořádně až budou useři ve fázi beta testování. V každém případě se zdá, že mám směr a můžu jít bádat :-) Dík.
    25.6.2008 19:20 YYY | skóre: 29 | blog: martinek
    Rozbalit Rozbalit vše Re: PHP: plnění šablony a její tisk
    Boze to je prispevek za vsechny prachy ;) Nu jinak doporucuji vygenerovani do pdf. Alespon to ty kancelarske krysy nebudou moci modifikovat :P
    25.6.2008 19:25 pasmen | skóre: 45 | blog: glob | Praha
    Rozbalit Rozbalit vše Re: PHP: plnění šablony a její tisk
    Za všechny prachy a hlavně s nulovou hodnotou je spíš tenhle příspěvek... Jinak, buď jsi to nečetl nebo nepochopil, ale o to, aby výsledek před tiskem mohli modifikovat, jde :-)
    26.6.2008 00:29 YYY | skóre: 29 | blog: martinek
    Rozbalit Rozbalit vše Re: PHP: plnění šablony a její tisk
    Pochopil jsem to dobre. Zkus si muj prispevek precist s trochou nadhledu, treba to potom pujde ;-)
    25.6.2008 21:57 Dejv | skóre: 37 | blog: Jak ten blog nazvat ... ? | Ostrava
    Rozbalit Rozbalit vše Re: PHP: plnění šablony a její tisk
    Jeste jsem si vzpomnel na tenhle clanecek. Je to sice export do "XML-excelu" (soubor .xlsx), ale v diskuzi jsou i nejake odkazy, treba to nekam povede.

    Dejv
    Pevně věřím, že zkušenější uživatelé mě s mými nápady usměrní a pošlou tam, kam tyto nápady patří...
    Daniel Kvasnička ml. avatar 26.6.2008 09:22 Daniel Kvasnička ml. | skóre: 52 | blog: The Joys and Sorrows of Being an IT Freak | Ostrava
    Rozbalit Rozbalit vše Re: PHP: plnění šablony a její tisk
    Tem vysokourovnovym knihovnam pro zapis dokumentu se snazim vyhybat. Pokud clovek nepotrebuje neco opravdu jednoducheho (a to IMHO neni pripad autora blogpostu), tak vzdycky narazi na limity te knihovny a pak to obchazet znamena zabit vic casu nez to generovat "rucne"...
    FSF: “screw you for not wanting the stuff we produce”, People: “screw you for not producing the stuff we want."
    26.6.2008 10:28 pasmen | skóre: 45 | blog: glob | Praha
    Rozbalit Rozbalit vše Re: PHP: plnění šablony a její tisk
    Souhlas. Návrhy ohledně rozzipování ODT a následné úpravy obsahu za pomoci šablonovacích systémů se mi jeví jako přesně to, co potřebuji. Zbývá mi se to naučit :-)
    26.6.2008 10:46 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
    Rozbalit Rozbalit vše Re: PHP: plnění šablony a její tisk
    Generování XML z textového šablonovacího systému je ZLO (TM) a všechny lidi, kteří něco takového provozují, bych s radostí sprovodil z IT světa. Teda všechny ne, jenom ty, od nichž taková "XML" dostávám a musím jim pak vysvětlovat, že kódování textu uvedené v prologu je opravdu třeba dodržovat, že menšítka, většítka, ampersandy a já nevím co je opravdu potřeba psát v podobě znakových entit, že HTML je potřeba nacpat do CDATA a někdy i že dokument opravdu musí být well-formed. A kdybych přemýšlel dýl, vzpomněl bych si asi i na další problémy. Ne, díky, ksindl.

    Tedy ne že by na šablonování bylo něco špatného, chraň bůh, taky generujeme dokumenty z vzorového ODT souboru. Ale generátor tomu formátu rozumí!
    Ještě na tom nejsem tak špatně, abych četl Viewegha.
    Daniel Kvasnička ml. avatar 26.6.2008 20:38 Daniel Kvasnička ml. | skóre: 52 | blog: The Joys and Sorrows of Being an IT Freak | Ostrava
    Rozbalit Rozbalit vše Re: PHP: plnění šablony a její tisk
    A kvuli cemu myslis, ze jsem o par komentaru vyse psal o XSLT a PHPTAL a upozornoval na to, ze Smarty nezajisti validni XML vystup? ;-)
    FSF: “screw you for not wanting the stuff we produce”, People: “screw you for not producing the stuff we want."
    27.6.2008 11:54 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
    Rozbalit Rozbalit vše Re: PHP: plnění šablony a její tisk
    Mmm, jakmile někde vidím napsáno XSLT, utíkám pryč, takže jsem to lehce minul :-)

    Ale ten TAL vypadá dostatečně úchylně na to, aby se to mohlo být dobré.
    Ještě na tom nejsem tak špatně, abych četl Viewegha.
    Daniel Kvasnička ml. avatar 28.6.2008 10:09 Daniel Kvasnička ml. | skóre: 52 | blog: The Joys and Sorrows of Being an IT Freak | Ostrava
    Rozbalit Rozbalit vše Re: PHP: plnění šablony a její tisk
    Mmm, jakmile někde vidím napsáno XSLT, utíkám pryč, takže jsem to lehce minul :-)
    :-P ;-)

    TAL je genialnost! Pro PHP jsem nic lepsiho nenasel a kdyby ty dve existujici implementace pro Javu nebyly mrtve, byla by to jedina vec, kterou bych byl ochoten pouzivat misto JSP (jakoze ne, ze bych mi JSP nejak nevyhovovaly -- az na svou tesnou vazbu na request-response cyklus).
    FSF: “screw you for not wanting the stuff we produce”, People: “screw you for not producing the stuff we want."
    28.6.2008 12:15 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
    Rozbalit Rozbalit vše Re: PHP: plnění šablony a její tisk
    Taky jsem koukal po těch javovských implementacích, ale ne tak do hloubky, abych zjistil, že jsou to mrtvé projekty. Škoda :-(

    Svůj (negativní) názor na JSP už jsem tady vyjádřil, nebudeme s tím začínat znova :-)
    Ještě na tom nejsem tak špatně, abych četl Viewegha.
    15.1.2009 17:05 beko
    Rozbalit Rozbalit vše Re: PHP: plnění šablony a její tisk

    Celkom by ma zaujimalo akym sposobom pristupujte z PHP do SAP?

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.