Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Wydrukowanie pdf'a po wejsciu na stronę
Forum PHP.pl > Forum > Przedszkole
kusiu
Witam,

Jak wydrukować plik pdf... automatycznie po wejściu na konkretną podstronę questionmark.gif
skowron-line
Używając fpdf możesz wysłać tak że wyskoczy do zapisu
chyba że da się $pdf->output() do przeglądarki i window.print() jak kolega wyżej radzi.
kusiu
Cytat(skowron-line @ 27.05.2009, 13:04:24 ) *
Używając fpdf możesz wysłać tak że wyskoczy do zapisu


możesz troszkę jaśniej questionmark.gif

...

rozumiem, ze to cos jak przy generowaniu exceli??

  1. <?php
  2. header("Content-Type: application/vnd.ms-excel");
  3. header("Content-Disposition: attachment; filename=raport.xls");
  4. header("Pragma: no-cache");
  5. header("Expires: 0");
  6.  
  7. fgetss($objWriter->save('php://output'));
  8. ?>
skowron-line
fpdf do klasa do generowania pdf-ów
http://www.fpdf.org/
i tam możesz sobie wybrać jak ma zostać zwrócony pdf
Cytat
* I: send the file inline to the browser. The plug-in is used if available. The name given by name is used when one selects the "Save as" option on the link generating the PDF.
* D: send to the browser and force a file download with the name given by name.
* F: save to a local file with the name given by name (may include a path).
* S: return the document as a string. name is ignored.

i ja mialem na myśli opcję D
kusiu
Cytat(skowron-line @ 27.05.2009, 13:45:23 ) *
fpdf do klasa do generowania pdf-ów
http://www.fpdf.org/
i tam możesz sobie wybrać jak ma zostać zwrócony pdf

i ja mialem na myśli opcję D


wlasnie to znalazlem:) Dziękuję.

Jest jeszcze jedna rzecz...

najpierw na jednej stronie mam formularz... z action do strony drugiej....
i wlaśnie na tej drugiej stronie chce aby oprocz pojawienia sie stronki wyswietlil sie w drugim oknie wygenerowany pdf... (po prostu po cicho sie otworzyl)

generuje to w ten sposob... ze na drugiej stronie na poczatku kodu includuje plik ktory generuje mi pdf'a, np:

  1. <?php
  2. include('../des/pdf/fpdf.php');
  3. $pdf=new FPDF();
  4. $pdf->AddPage();
  5. $pdf->SetFont('Arial','B',16);
  6. $pdf->Cell(40,10,'Hello World!');
  7. $pdf->Output("oswiadczenie.pdf", "D");
  8. ?>


efekt jest taki ze wyswietla mi tego PDF'a jednak nie przechodzi na druga stronkee... sad.gif
skowron-line
To Jeżeli robisz D czyli wywalasz do przegladarki to zrob tak
  1. <?php
  2. <h1>Storna 2</h1> // kod html żeby nie było
  3. header( 'Location:nazwa_pliku_w_ktorym_generujesz_pdf.php' );
  4. ?>


I wtedy powinna Ci się wyświetlić strona i wyskoczyć pdf do zapisu /otwarcia.
kusiu
Cytat(skowron-line @ 28.05.2009, 08:33:34 ) *
To Jeżeli robisz D czyli wywalasz do przegladarki to zrob tak
  1. <?php
  2. <h1>Storna 2</h1> // kod html żeby nie było
  3. header( 'Location:nazwa_pliku_w_ktorym_generujesz_pdf.php' );
  4. ?>


I wtedy powinna Ci się wyświetlić strona i wyskoczyć pdf do zapisu /otwarcia.


Niestety sad.gif
Wynik jest taki sam... nie pzechodzi na strone druga tylko wyskakuje komunikat czy chce otworzyc plik lub go zapisac...
skowron-line
Cytat(kusiu @ 28.05.2009, 08:55:25 ) *
Niestety sad.gif
Wynik jest taki sam... nie pzechodzi na strone druga tylko wyskakuje komunikat czy chce otworzyc plik lub go zapisac...

To pokaz jakis kod łatwiej będzie Ci pomóc
kusiu
plik 1 z formem:

  1. <form method="post" id="start" action="2.php">
  2. <div class="tlo">
  3. <table style="margin-left: 300px;">
  4. <tr>
  5. <td class="small_text">Wydrukować oświadczenie?</td><td class="small_text" width="300"><span style="font-weight: bolder;">TAK</span> <input type="checkbox" name="wydrukowac" value="1" /></td>
  6. </tr>
  7. <tr>
  8. <td class="small_text">Czy Klient podpisał oświadczenie?</td><td class="small_text"><span style="font-weight: bolder;">TAK</span> <input type="checkbox" name="podpisal" class="required2" value="1" /></td>
  9. </tr>
  10. </table>
  11. </div>
  12. <div class="przerwa"></div>
  13. <div style="text-align: right;"><input type="submit" name="start" value="Start" /></div>
  14. </form>


Plik 2:
No tu tez jakis text... htmlowski
  1. <?php
  2. if($_POST['wydrukowac']==1){
  3.    header("Location: includes/oswiadczenie1.php");
  4. }
  5. ?>


oswiadczenie1.php

  1. <?php
  2. include('../../des/pdf/fpdf.php');
  3. $pdf=new FPDF();
  4. $pdf->AddPage();
  5. $pdf->SetFont('Arial','B',16);
  6. $pdf->Cell(40,10,'Hello World!');
  7. $pdf->Output("oswiadczenie.pdf", "D");
  8. ?>
skowron-line
Cytat(kusiu @ 28.05.2009, 09:12:33 ) *
No tu tez jakis text... htmlowski
  1. <?php
  2. if($_POST['wydrukowac']==1){
  3.    header("Location: includes/oswiadczenie1.php");
  4. }
  5. ?>

No ale przed przekierowaniem czy po przekierowaniu questionmark.gif powinien byc przed.
kusiu
Cytat(skowron-line @ 28.05.2009, 09:20:35 ) *
No ale przed przekierowaniem czy po przekierowaniu questionmark.gif powinien byc przed.


Probowalem wsadzac przed i po ... dziala tak samo ... przekierowuje od razu na tego PDF'a dlatego nie wyswietla sie w ogole druga stronka tylko PDF do zapisu badz odczytu...
skowron-line
  1. <?php
  2. header( 'refresh: 5; url=/webdsn/' );
  3. ?>

A ustaw refresha może to pomoże.
kusiu
Cytat(skowron-line @ 28.05.2009, 09:32:53 ) *
  1. <?php
  2. header( 'refresh: 5; url=/webdsn/' );
  3. ?>

A ustaw refresha może to pomoże.


Niestety również nie pomoglo.. Cholera to jest nie możliwe by się nie dało otworzyć glupiego PDF'a na podstronce sad.gif
skowron-line
Ale pdf wyskakuje do zapisu ale treść strony sie nie pokazuje questionmark.gif
kusiu
Cytat(skowron-line @ 28.05.2009, 10:11:00 ) *
Ale pdf wyskakuje do zapisu ale treść strony sie nie pokazuje questionmark.gif


gdy w stronie 2.php jest header(location:..) ... wtedy nawet nie przechodzi na ta druga stronkę tylko od razu po kliknieciu w submit pojawia się to okienko do odczytu lub zapisu pliku... Jest to rownoznaczne z tym jak bym w form action przypisał wartosc "includes/oswiadczenie1.php"
skowron-line
A jak ustawiłeś przekierowanie po x sek to tez odrazu pokazywało się okno do zapisu pdf ? Jeżeli tak to coś zle zrobiłeś.
kusiu
Cytat(skowron-line @ 28.05.2009, 10:17:51 ) *
A jak ustawiłeś przekierowanie po x sek to tez odrazu pokazywało się okno do zapisu pdf ? Jeżeli tak to coś zle zrobiłeś.


Tez
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.