Likes Likes:  0
Resultaten 1 tot 9 van de 9
Geen
  1. #1
    Robert de Boer
    Word document genereren vanuit PHP
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Word document genereren vanuit PHP

    Beste mensen,

    Ik wil graag een script maken wat een Word-document genereerd vanuit een
    php-pagina. De php-pagina(s) bestaan uit een vragenlijst. Afhankelijk van de
    gegeven antwoorden moeten (van tevoren gemaakte) blokken tekst onder elkaar
    in een Word-document komen te staan. De verwerking van de antwoorden lukt me
    zelf nog wel, waar ik nu ben is een situatie dat ik weet welke tekstblokken
    ik uiteindelijk moet hebben. Bv: $contentblok1 = tekstdeel1.13,
    $contentblok2 = tekstdeel2.4 (door de gegeven antwoorden moet het
    word-document beginnen met van tevoren getypt tekstblok 1.13, gevolgt door
    tekstblok 2.4). Van het genereren van dit Word-document mag de bezoeker van
    mijn website eigenlijk niets merken en het resultaat (het complete
    Word-document) moet niet op de server blijven hangen, maar moet per e-mail
    verstuurd worden naar mijzelf.

    Een vrij complexe vraag denk ik, maar ik zit er al een hele tijd mee. Wie
    kan mij een stukje verder op weg helpen met bijvoorbeeld (een link naar) wat
    uitleg? Alvast bedankt voor jullie moeite!

    Robert



  2. #2
    Reinoud Horstink
    Word document genereren vanuit PHP
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: Word document genereren vanuit PHP

    Robert de Boer wrote:
    > Beste mensen,
    >
    > Ik wil graag een script maken wat een Word-document genereerd vanuit een
    > php-pagina. De php-pagina(s) bestaan uit een vragenlijst. Afhankelijk van de
    > gegeven antwoorden moeten (van tevoren gemaakte) blokken tekst onder elkaar
    > in een Word-document komen te staan. De verwerking van de antwoorden lukt me
    > zelf nog wel, waar ik nu ben is een situatie dat ik weet welke tekstblokken
    > ik uiteindelijk moet hebben. Bv: $contentblok1 = tekstdeel1.13,
    > $contentblok2 = tekstdeel2.4 (door de gegeven antwoorden moet het
    > word-document beginnen met van tevoren getypt tekstblok 1.13, gevolgt door
    > tekstblok 2.4). Van het genereren van dit Word-document mag de bezoeker van
    > mijn website eigenlijk niets merken en het resultaat (het complete
    > Word-document) moet niet op de server blijven hangen, maar moet per e-mail
    > verstuurd worden naar mijzelf.


    Enige tijd geleden ben ik tegen hetzelfde probleem aangelopen. De
    oplossing was door niet het MS-Word bestandsformaat te gebruiken, maar
    het RTF-formaat. Dit wordt probleemloos door MS-Word geopend (en
    waarschijnlijk ook door talloze andere tekstverwerkers). Vanuit PHP is
    het nog steeds lastig om dergelijke documenten te maken, zeker wanneer
    je nog iets met opmaak wilt doen.

    Mijn oplossing bestaat uit het in Word maken van een template (inclusief
    opmaak, logo's, etc). Hierin verwerk je op de gewenste plaatsen bepaalde
    markers (bijvoorbeeld "%FACTUURBEDRAG%"). In je PHP-code gooi je die
    template vervolgens in een string. Met replace-acties of regexen kun je
    vervolgens die markers vervangen door variabele tekst. Tot slot stuur je
    het geheel met het juiste mime-type naar de client.

    Kan het netter? Ongetwijfeld. Voor zover ik echter weet niet zonder
    externe (betaalde) modules. Bovenstaande oplossing functioneert prima
    voor het online invullen van facturen en contracten en zal
    waarschijnlijk ook voor jouw probleem een werkende oplossing vormen.

    Reinoud.


  3. #3
    Ronald Paul
    Word document genereren vanuit PHP
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: Word document genereren vanuit PHP

    "Robert de Boer" <robertdeboer83@hotmail.com> schreef:

    >Ik wil graag een script maken wat een Word-document genereerd vanuit een
    >php-pagina.


    Je kunt naast Reinoud's oplossing ook aan de slag gaan met COM als PHP
    draait in een Windows omgeving met daarin tevens Word geïnstalleerd.
    Zie http://php.weblogs.com/com_php onder het kopje "Invoking Microsoft
    Word with PHP".

    >Van het genereren van dit Word-document mag de bezoeker van
    >mijn website eigenlijk niets merken en het resultaat (het complete
    >Word-document) moet niet op de server blijven hangen, maar moet per e-mail
    >verstuurd worden naar mijzelf.


    In tegenstelling tot het vorige is dit niet zo moeilijk. Er is
    voldoende informatie te vinden over het versturen van e-mails met
    bijlagen vanuit PHP.

    --
    Groet, Ronald

  4. #4
    Robert de Boer
    Word document genereren vanuit PHP
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: Word document genereren vanuit PHP

    > Enige tijd geleden ben ik tegen hetzelfde probleem aangelopen. De
    > oplossing was door niet het MS-Word bestandsformaat te gebruiken, maar
    > het RTF-formaat. Dit wordt probleemloos door MS-Word geopend (en
    > waarschijnlijk ook door talloze andere tekstverwerkers). Vanuit PHP is
    > het nog steeds lastig om dergelijke documenten te maken, zeker wanneer
    > je nog iets met opmaak wilt doen.
    >
    > Mijn oplossing bestaat uit het in Word maken van een template (inclusief
    > opmaak, logo's, etc). Hierin verwerk je op de gewenste plaatsen bepaalde
    > markers (bijvoorbeeld "%FACTUURBEDRAG%"). In je PHP-code gooi je die
    > template vervolgens in een string. Met replace-acties of regexen kun je
    > vervolgens die markers vervangen door variabele tekst. Tot slot stuur je
    > het geheel met het juiste mime-type naar de client.
    >
    > Kan het netter? Ongetwijfeld. Voor zover ik echter weet niet zonder
    > externe (betaalde) modules. Bovenstaande oplossing functioneert prima
    > voor het online invullen van facturen en contracten en zal
    > waarschijnlijk ook voor jouw probleem een werkende oplossing vormen.


    Super bedankt voor dit antwoord!!! Klinkt als een zeer goede oplossing voor
    mn vraagstuk. Heb je misschien iets van een kort voorbeeld van hoe ik die
    template aanroep binnen een string en hoe die replace-acties werken?

    Robert



  5. #5
    Ronald Paul
    Word document genereren vanuit PHP
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: Word document genereren vanuit PHP

    "Robert de Boer" <robertdeboer83@hotmail.com> schreef:

    >Super bedankt voor dit antwoord!!! Klinkt als een zeer goede oplossing voor
    >mn vraagstuk. Heb je misschien iets van een kort voorbeeld van hoe ik die
    >template aanroep binnen een string en hoe die replace-acties werken?


    Zie mijn bericht van gisteren: Message-ID:
    <j38pqv0m9vos6ndp44orp39pmdnofhokpn@4ax.com>.

    --
    Groet, Ronald

  6. #6
    Robert de Boer
    Word document genereren vanuit PHP
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: Word document genereren vanuit PHP

    > >Super bedankt voor dit antwoord!!! Klinkt als een zeer goede oplossing
    voor
    > >mn vraagstuk. Heb je misschien iets van een kort voorbeeld van hoe ik die
    > >template aanroep binnen een string en hoe die replace-acties werken?

    >
    > Zie mijn bericht van gisteren: Message-ID:
    > <j38pqv0m9vos6ndp44orp39pmdnofhokpn@4ax.com>.


    Daar staat geen antwoord op deze vraag in toch?



  7. #7
    Ronald Paul
    Word document genereren vanuit PHP
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: Word document genereren vanuit PHP

    "Robert de Boer" <robertdeboer83@hotmail.com> schreef:

    >> Zie mijn bericht van gisteren: Message-ID:
    >> <j38pqv0m9vos6ndp44orp39pmdnofhokpn@4ax.com>.

    >
    >Daar staat geen antwoord op deze vraag in toch?


    Jawel toch? Jij wilt een string vullen met de inhoud van een bestand
    (een .rtf-template in dit geval) en bepaalde markers vervangen. Hoe en
    waarmee dat kan staat in die post aangegeven. Of in ieder geval in die
    draad, want het is een erg vergelijkbaar probleem.

    --
    Groet, Ronald

  8. #8
    Robert de Boer
    Word document genereren vanuit PHP
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: Word document genereren vanuit PHP

    > Ik wil graag een script maken wat een Word-document genereerd vanuit een
    > php-pagina. De php-pagina(s) bestaan uit een vragenlijst. Afhankelijk van

    de
    > gegeven antwoorden moeten (van tevoren gemaakte) blokken tekst onder

    elkaar
    > in een Word-document komen te staan. De verwerking van de antwoorden lukt

    me
    > zelf nog wel, waar ik nu ben is een situatie dat ik weet welke

    tekstblokken
    > ik uiteindelijk moet hebben. Bv: $contentblok1 = tekstdeel1.13,
    > $contentblok2 = tekstdeel2.4 (door de gegeven antwoorden moet het
    > word-document beginnen met van tevoren getypt tekstblok 1.13, gevolgt door
    > tekstblok 2.4). Van het genereren van dit Word-document mag de bezoeker

    van
    > mijn website eigenlijk niets merken en het resultaat (het complete
    > Word-document) moet niet op de server blijven hangen, maar moet per e-mail
    > verstuurd worden naar mijzelf.


    Kwam dit bedrijf net tegen tijdens mn speurtocht over het internet:
    http://www.aia-itp.com/index.html
    Maakt dit bedrijf eigenlijk niet precies waar ik naar op zoek ben?

    Robert



  9. #9
    Reinoud Horstink
    Word document genereren vanuit PHP
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: Word document genereren vanuit PHP

    Robert de Boer wrote:

    > Super bedankt voor dit antwoord!!! Klinkt als een zeer goede oplossing voor
    > mn vraagstuk. Heb je misschien iets van een kort voorbeeld van hoe ik die
    > template aanroep binnen een string en hoe die replace-acties werken?


    Zoiets kun je eenvoudig zelf schrijven met de functies fopen, fread,
    fclose en preg_replace. Een voorbeeld:

    $fd = fopen ($userfile, "rb");
    $content = fread ($fd, filesize ($userfile));
    fclose ($fd);

    Let op: $userfile is de bestandslocatie van de rtf-template op je
    filesystem. De aanduiding "rb" geldt alleen ingeval van
    windows-systemen, op unix-achtigen kan je volstaan met "r". Je template
    staat nu in $content, waarmee je vervolgens allerlei geintjes kan
    uithalen, bijvoorbeeld:

    # vervang marker %FACTUURNR% door de variabele $factuurnr:
    $content = preg_replace("%FACTUURNR%", "$factuurnr", $content);

    # de boel dumpen naar de tekstverwerker van de client:
    $filename = "jouwbestandsnaam.rtf";
    header("Content-disposition: attachment; Filename=$filename");
    header("Content-type: application/ms-word; name=".$filename);
    echo $content;

    Reinoud.


Webhostingtalk.nl

Contact

  • Rokin 113-115
  • 1012 KP, Amsterdam
  • Nederland
  • Contact
© Copyright 2001-2026 Webhostingtalk.nl.
Web Statistics