Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]utworzenie pdfa z formularza
Krismen
post 10.05.2011, 17:59:48
Post #1





Grupa: Zarejestrowani
Postów: 86
Pomógł: 0
Dołączył: 5.02.2009

Ostrzeżenie: (0%)
-----


Mam taki formularz:

  1. <?php
  2.  
  3. $nazwisko=$_POST['nazwisko'];
  4.  
  5. echo "<form action='pdf.php' method='POST'>";
  6. echo "<input type='text' name='nazwisko' value='".$nazwisko."'/>";
  7. echo "<input type='submit' value='dalej'>";
  8. echo "</form>";
  9.  
  10. ?>


Chciałbym wygenerować z niego plik pdf. Pól w całym formularzu będzie o wiele więcej, wklejam tylko kawałek kodu. I skrypt który generuje plik pdf:

  1. <?php
  2.  
  3. // utworzenie krótkich nazw zmiennych
  4. $nazwisko = $_POST['nazwisko'];
  5.  
  6. header('Content-Disposition: attachment; filename="plik.pdf"');
  7. header( 'Content-type: application/pdf' );
  8.  
  9. $data = date( 'F d, Y' );
  10.  
  11. // otwarcie pliku szablonu
  12. $nazwa_pliku = 'wniosek.pdf';
  13. $wyswietl = file_get_contents($nazwa_pliku);
  14.  
  15. // zamiana symboli zastępczych w szablonie na dane
  16.  
  17. $wyswietl = str_replace( '<<Nazwisko>>', $nazwisko, $wyswietl );
  18. $wyswietl = str_replace( '<<mm/dd/rrrr>>', $data, $wyswietl );
  19.  
  20. // wysłanie wygenerowanego dokumentu do przeglądarki
  21.  
  22. echo $wyswietl;
  23.  
  24. ?>


Plik pdf mam gotowy, jest w nim sporo danych które są stałe i pola które powinny się podmienić na dane wpisane przez użytkownika np. nazwisko i data. W pliku pdf'a pola do podmiany są w <<>>. Plik się generuje ale pola nie są podmieniane... Dodam jeszcze że plik pdf tworzyłem już chyba wszystkimi dostępnymi programami typu: PDFCreator, Bullzip PDF Printer a także Acrobat Distiller 7.0. Siedzę na tym już od rana i kończą mi się pomysły.
Ktoś pomoże?


Go to the top of the page
+Quote Post
erix
post 10.05.2011, 20:07:43
Post #2





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Jeśli szablony w PDF i PHP, to tylko FPDI.

I zapomnij o zwykłej podmianie przez str_replace; PDF, to nie jest format tekstowy. Szablon załadujesz biblioteką, o której wspomniałem, ale będziesz musiał ręcznie nanosić komórki z zawartością.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
Krismen
post 10.05.2011, 20:48:08
Post #3





Grupa: Zarejestrowani
Postów: 86
Pomógł: 0
Dołączył: 5.02.2009

Ostrzeżenie: (0%)
-----


Ok, dzięki poczytam o FPDI. Ciekawe jest to, że ten przykład wziąłem z książki Vademecum Profesjonalisty. Pisze tam, że tak się da zrobić, mało tego na CD do tej książki jest plik pdf, po jego otwarciu w acrobacie są pola w nawiasach <<>>. W pliku php jest użyta funkcja str_replace i to działa! Flaszkę temu kto mi wyjaśni jak to jest zrobione.
Załączam link do tego przykładu
link
Go to the top of the page
+Quote Post
erix
post 10.05.2011, 23:33:19
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




(luźna myśl, nie jestem w 100% pewien)

Sęk w tym, że PDF-y od którejś wersji są kompresowane, bodajże gzipem. Trzeba by było spróbować ją wyłączyć podczas generowania PDF-a albo zjechać w dół z wersją.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
Ilware
post 10.05.2011, 23:42:43
Post #5





Grupa: Zarejestrowani
Postów: 248
Pomógł: 31
Dołączył: 14.12.2010
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


polecam http://code.google.com/p/wkhtmltopdf/ tworzy z pliku html pdf, z uwzględnieniem wszystkich css dla danego html'a


--------------------
Jeżeli pomogłem kliknij "Pomógł" :)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 20.06.2025 - 09:36