Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Przycisk generuj PDF
Forum PHP.pl > Forum > Przedszkole
lustfingers
Witam, czytam informacje na temat generowania pliku PDF jednak nie do końca rozumie i tak np. mam zwykłą stronkę index.php:

  1. <?php
  2. include '../inc/db.inc.php';
  3. try
  4. {
  5. $sql = 'SELECT value1, value2, value3
  6. FROM table1;
  7. $result = $pdo->query($sql);
  8. }
  9. catch (PDOException $e)
  10. {
  11. $error = 'Błąd przy pobieraniu danych: ' . $e->getMessage();
  12. include '../inc/error.inc.php';
  13. exit();
  14. }
  15.  
  16. echo 'TEKST';
  17.  
  18. foreach ($result as $row) {
  19. echo $row['value1'];
  20. echo $row['value2'];
  21. echo $row['value3'];
  22. }


Teraz pod spodem chce umieścić przycisk "zobacz/pobierz PDF".

Znajdę gdzieś tutorial na tak prostym przykładzie jak mogę to zrobić korzystając z np. fpdf czy mpdf lub jakiegokolwiek komponentu pdf? Ewentualnie może mi to ktoś wytłumaczyć na wymienionym przykładzie?
trueblue
http://www.fpdf.org/ -> Tutorials -> Tutorial 1
Wiem, że trudno znaleźć dlatego podsyłam.
lustfingers
Przeglądałem to wcześniej i wiele innych, jestem jednym z tych którzy nie urodzili się z klawiaturą w ręku a przygodę z komputerem zacząłem już w dorosłym wieku, więc czytałem nie rozumie dlatego założyłem wątek tongue.gif

Nie wiem czy w ogóle dobrze to interpretuje ale mam plik index.php tak jak wyżej i żeby utworzyć plik PDF tworzę button do pliku np. getindexpdf.php w nim mam klasę która rozszerza klasę FPDF.

Teraz jak mam pobrać wartości z bazy? Wyniki z $result przekazuje w funkcji?
trueblue
I bez słownika...

Nie musisz rozszerzać klasy FPDF.
Generowanie PDFa może być umieszczone w pliku index.php, lecz określone warunkiem (np. na podstawie wartości zmiennej z $_GET).
Przycisk może być linkiem lub stricte przyciskiem submit z formularza.

Dane przekazujesz w dowolny sposób. Może prościej będzie jeśli najpierw zaczniesz nie od pobierania danych z bazy, lecz przypisania ich na stałe do jakiejś zmiennej/stałej. Jeśli to Ci się uda, to wtedy zacznij pobierać dane z bazy.
lustfingers
Wybrałem mPDF ze względu na polskie czcionki, na FPDF najpierw miałem dziwne znaki później pytajniki a na sam koniec zamiast pliku pdf wyświetlały się tylko różne znaczki, teraz próbuje się przebić przez manuala mPDF ponieważ nie bardzo wiem jak w najprostszy sposób wypisać wartości z pętli.

  1. foreach ($result as $row) {
  2. echo $row['value1'];
  3. echo $row['value2'];
  4. echo $row['value3'];
  5. }
trueblue
Wiele metod mPDF ma wspólnych z FPDF.
Znajdź tylko tą za pomocą, której chcesz te dane wypisać.
lustfingers
Ciężko znaleźć szczególnie gdy się niewiele wie na temat programowania.

Generalnie to chciałem na próbę zrobić tak:

  1. $results = array(6, 2, 3, 4, 5);
  2. foreach ($results as $rows) {
  3. $mpdf->WriteHTML($rows);
  4. }


I dostaje tylko to:

  1. HTML contains invalid UTF-8 character(s)
  2. 6mPDF error:



więc zwraca mi tylko pierwszą wartość tablicy, a następnie nieokreślony błąd.
trueblue
Myślę, że jednak łatwo. Można np. szukać po komunikatach błędów.

http://stackoverflow.com/questions/2873606...tf-8-characters

A propos wyświetlania danych z pętli:
http://www.fpdf.org/ -> Tutorials -> Tutorial 5
lustfingers
Super, dzięki. Już chyba pojąłem o co chodzi i nie wydaje się tak skomplikowane jak wcześniej. Mam nadziej że już nie trafię na jakiś problem w tym temacie.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.