Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] generowanie PDF za pomocą FPDF
Forum PHP.pl > Forum > PHP
shpaque
mam problem - witajcie - jak robilem plik w katalogu fpdf bylo ok, teraz nie. A nie chce walic tab moich oplikow wole to robic w innym folderze

  1. require('../fpdf/fpdf.php');
  2. class PDF extends FPDF
  3. {
  4. // Page header
  5. function Header()
  6. {
  7. // Logo
  8. $this -> Image('./../img/no-grey.svg', 10, 6, 30);
  9. // Arial bold 15
  10. $this -> SetFont('Arial', 'B', 15);
  11. // Move to the right
  12. $this -> Cell(80);
  13. // Title
  14. $this -> Cell(30, 10, 'Title', 1, 0, 'C');
  15. // Line break
  16. $this -> Ln(20);
  17. }
  18.  
  19. // Page footer
  20. function Footer()
  21. {
  22. // Position at 1.5 cm from bottom
  23. $this -> SetY(-15);
  24. // Arial italic 8
  25. $this -> SetFont('Arial', 'I', 8);
  26. // Page number
  27. $this -> Cell(0, 10, 'Page '.$this->PageNo().' / {nb}', 0, 0, 'C');
  28. }
  29. }
  30. $pdf = new FPDF('P', 'mm', 'A4');
  31. $pdf -> AddPage('P');
  32. $pdf -> SetFont('Arial', 'B', 14);
  33. $pdf -> SetMargins(20, 20, 20);
  34.  
  35. $pdf -> SetTitle($abstract['abstractTitle']);
  36. $pdf -> SetSubject($abstract['abstractTitle']);
  37. $pdf -> SetAuthor('X Konferencja Adeptów Fizjologii');
  38. $pdf -> SetCreator('Skrypt FPDF wykonany dla X Konferencji Adeptów Fizjologii');
  39.  
  40. $pdf -> Header();
  41. $pdf -> MultiCell(0, 5, 'Tekst, który zostanie wygenerowany za pomocą Biblioteki FPDF.', 0, 'J', 0);
  42.  
  43. $x = $pdf -> GetX();
  44. $y = $pdf -> GetY();
  45. $pdf -> SetXY($x, $y + 10);
  46.  
  47. $pdf -> MultiCell(0, 5, 'To już drugi text, który zostanie wygenerowany.', 0, 'J', 0);
  48. $pdf -> Footer();
  49.  
  50. $file = htmlspecialchars($abstract['abstractAuthor'])." - ".htmlspecialchars($abstract['abstractTitle']).".pdf";
  51. $pdf -> Output('I', $file)


wywala

  1. Fatal error: Uncaught exception 'Exception' with message 'FPDF error: Some data has already been output, can't send PDF file (output started at /home/smusic/ftp/_x-kaf/admin/abstracts.php:35)' in /home/smusic/ftp/_x-kaf/fpdf/fpdf.php:271 Stack trace: #0 /home/smusic/ftp/_x-kaf/fpdf/fpdf.php(1052): FPDF->Error('Some data has a...') #1 /home/smusic/ftp/_x-kaf/fpdf/fpdf.php(999): FPDF->_checkoutput() #2 /home/smusic/ftp/_x-kaf/php/abstracts.php(106): FPDF->Output('I', 'Hainz von Klops...') #3 /home/smusic/ftp/_x-kaf/admin/abstracts.php(103): include('/home/smusic/ft...') #4 {main} thrown in /home/smusic/ftp/_x-kaf/fpdf/fpdf.php on line 271
Pyton_000
Przetłumacz sobie błąd bo masz jasno powiedziane co jest nie tak.
shpaque
przetlumaczylem - "niektore...zostaly juz wyprowadzone" ale tego zupelnie nie rozumiem. Dlaczego jak wezme parametr F wszystko dziala jak nalezy?
Pyton_000
Przecież masz napisane że w pliku /home/smusic/ftp/_x-kaf/admin/abstracts.php:35 masz już robiony jakiś output ergo nie możesz wyświetlić PDF Inline
shpaque
no ale jak, gdzie mam robiuony? przeciez output robie dopiero tam
nospor
moze zajrzyj wpierw do tego pliku abstracts.php linia 35 i sprawdz co tam jest? Potem sie wyklocaj ze php zle dziala
shpaque
ciekawe, linia 35 wyglada tak:

  1. <?php
  2. ini_set('display_errors', 1);
  3.  
  4. if (!isset($_SESSION['email']))
  5. {
  6. echo "<script>alert('Strona widoczna tylko dla zalogowanych Administratorów!');</script>";
  7. echo "<script>document.location.href = \"./../index.php\";</script>";
  8. }
  9.  
  10. if (isset($_GET['section']))
  11. {
  12. $section = $_GET['section'];
  13. $abstractDataBase = './../db/abstracts.csv';
  14. $abstractColumns = ['abstractEmail', 'abstractTitle', 'abstractAuthors', 'abstractAuthor', 'authorEmail', 'abstractAfiliation', 'abstractSection', 'presentForm', 'abstractText'];
  15. $abstracts = array_map(function ($record) use ($abstractColumns) {return array_combine($abstractColumns, str_getcsv($record, '|'));}, file($abstractDataBase));
  16. array_multisort(array_column($abstracts, 'abstractEmail'), SORT_FLAG_CASE | SORT_STRING, $abstracts);
  17. $currentSection = array_filter($abstracts, function ($abstract) use ($section) {return $abstract['abstractSection'] === $section;});
  18. $count = count($currentSection);
  19.  
  20. if ($section === 's1') {$title = '<b>Sesja I</b>: Pre i postnatalne procesy rozwojowe i adaptacyjne w ustroju';}
  21. if ($section === 's2') {$title = '<b>Sesja II</b>: Komórkowe i sygnalizacyjne transformacje w fizjopatologii nowotworów';}
  22. if ($section === 's3') {$title = '<b>Sesja III</b>: Diagnostyka i terapia w gastroenterologii';}
  23. if ($section === 's4') {$title = '<b>Sesja IV</b>: Genetyczne i epigenetyczne czynniki kształtujące układowe funkcjonowanie ustroju';}
  24. if ($section === 's5') {$title = '<b>Sesja V</b>: Stan odżywienia jako wykładnik zdrowia i podatności na choroby';}
  25. if ($section === 's6') {$title = '<b>Sesja VI</b>: Fizjologia i patofizjologia centralnego układu nerwowego';}
  26. if ($section === 's7') {$title = '<b>Sesja VII</b>: Substancje pochodzenia naturalnego jako czynniki prawidłowego funkcjonowania organizmu';}
  27. if ($section === 's8') {$title = '<b>Sesja VIII</b>: Badania funkcjonalne komórek – metody i techniki';}
  28. if ($section === 's9') {$title = '<b>Sesja IX</b>: Fizjologia zwierząt bezkręgowych lub Fizjologia bezkręgowców';}
  29. if ($section === 's10') {$title = '<b>Sesja X</b>: Fizjologia bakterii';}
  30. }
  31. else
  32. {
nospor
czy mozesz pokazac caly ten plik
/home/smusic/ftp/_x-kaf/admin/abstracts.php:35
?
shpaque
nospor, czyli jak ddaje Output('F', $file); to nie ma bledu w lini 35 gdzie zamykany jest nawias smile.gif ale jak dam Output('I', $file) - nagle sie pojawia?

  1. <?php
  2. ini_set('display_errors', 1);
  3.  
  4. if (!isset($_SESSION['email']))
  5. {
  6. echo "<script>alert('Strona widoczna tylko dla zalogowanych Administratorów!');</script>";
  7. echo "<script>document.location.href = \"./../index.php\";</script>";
  8. }
  9.  
  10. if (isset($_GET['section']))
  11. {
  12. $section = $_GET['section'];
  13. $abstractDataBase = './../db/abstracts.csv';
  14. $abstractColumns = ['abstractEmail', 'abstractTitle', 'abstractAuthors', 'abstractAuthor', 'authorEmail', 'abstractAfiliation', 'abstractSection', 'presentForm', 'abstractText'];
  15. $abstracts = array_map(function ($record) use ($abstractColumns) {return array_combine($abstractColumns, str_getcsv($record, '|'));}, file($abstractDataBase));
  16. array_multisort(array_column($abstracts, 'abstractEmail'), SORT_FLAG_CASE | SORT_STRING, $abstracts);
  17. $currentSection = array_filter($abstracts, function ($abstract) use ($section) {return $abstract['abstractSection'] === $section;});
  18. $count = count($currentSection);
  19.  
  20. if ($section === 's1') {$title = '<b>Sesja I</b>: Pre i postnatalne procesy rozwojowe i adaptacyjne w ustroju';}
  21. if ($section === 's2') {$title = '<b>Sesja II</b>: Komórkowe i sygnalizacyjne transformacje w fizjopatologii nowotworów';}
  22. if ($section === 's3') {$title = '<b>Sesja III</b>: Diagnostyka i terapia w gastroenterologii';}
  23. if ($section === 's4') {$title = '<b>Sesja IV</b>: Genetyczne i epigenetyczne czynniki kształtujące układowe funkcjonowanie ustroju';}
  24. if ($section === 's5') {$title = '<b>Sesja V</b>: Stan odżywienia jako wykładnik zdrowia i podatności na choroby';}
  25. if ($section === 's6') {$title = '<b>Sesja VI</b>: Fizjologia i patofizjologia centralnego układu nerwowego';}
  26. if ($section === 's7') {$title = '<b>Sesja VII</b>: Substancje pochodzenia naturalnego jako czynniki prawidłowego funkcjonowania organizmu';}
  27. if ($section === 's8') {$title = '<b>Sesja VIII</b>: Badania funkcjonalne komórek – metody i techniki';}
  28. if ($section === 's9') {$title = '<b>Sesja IX</b>: Fizjologia zwierząt bezkręgowych lub Fizjologia bezkręgowców';}
  29. if ($section === 's10') {$title = '<b>Sesja X</b>: Fizjologia bakterii';}
  30. }
  31. else
  32. {
  33. echo "<script>alert('Nie wybrano sesji!');</script>";
  34. echo "<script>document.location.href = \"./../admin/admin.php\";</script>";
  35. }
  36.  
  37. if ((isset($_GET['author'])) && (isset($_GET['email'])) && (isset($_GET['title'])))
  38. {
  39. $abstractAuthor = $_GET['author'];
  40. $authorEmail = $_GET['email'];
  41. $abstractTitle = $_GET['title'];
  42.  
  43. if (($abstractAuthor === 'all') && ($authorEmail === 'all') && ($abstractTitle === 'all'))
  44. {
  45.  
  46. }
  47. else
  48. {
  49. $currentAbstract = array_filter($currentSection, function ($abstract) use ($authorEmail, $abstractAuthor, $abstractTitle) {return (($abstract['authorEmail'] === $authorEmail) && ($abstract['abstractAuthor'] === $abstractAuthor) && ($abstract['abstractTitle'] === $abstractTitle));});
  50. $abstract = reset($currentAbstract);
  51.  
  52. require('./../fpdf/fpdf.php');
  53. require('./../fpdf/makefont/makefont.php');
  54. MakeFont('./../fonts/Cairo-Regular.ttf', 'cp1252');
  55. MakeFont('./../fonts/Cairo-Bold.ttf', 'cp1252');
  56.  
  57. class PDF extends FPDF
  58. {
  59. // Page header
  60. function Header()
  61. {
  62. // Logo
  63. $this -> Image('./../img/no-grey.svg', 10, 6, 30);
  64. // Arial bold 15
  65. $this -> SetFont('Arial', 'B', 15);
  66. // Move to the right
  67. $this -> Cell(80);
  68. // Title
  69. $this -> Cell(30, 10, $abstract['abstractTitle'], 1, 0, 'C');
  70. // Line break
  71. $this -> Ln(20);
  72. }
  73.  
  74. // Page footer
  75. function Footer()
  76. {
  77. // Position at 1.5 cm from bottom
  78. $this -> SetY(-15);
  79. // Arial italic 8
  80. $this -> SetFont('Arial', 'I', 8);
  81. // Page number
  82. $this -> Cell(0, 10, 'Page '.$this->PageNo().' / {nb}', 0, 0, 'C');
  83. }
  84. }
  85.  
  86. $pdf = new FPDF('P', 'mm', 'A4');
  87. $pdf -> AddPage('P');
  88. $pdf -> SetFont('Arial', 'B', 14);
  89. $pdf -> SetMargins(20, 20, 20);
  90.  
  91. $pdf -> SetTitle(htmlspecialchars($abstract['abstractTitle']));
  92. $pdf -> SetSubject(htmlspecialchars($abstract['abstractTitle']));
  93. $pdf -> SetAuthor('X Konferencja Adeptów Fizjologii');
  94. $pdf -> SetCreator('Skrypt FPDF wykonany dla X Konferencji Adeptów Fizjologii');
  95.  
  96. $pdf -> Header();
  97. $pdf -> MultiCell(0, 5, $abstract['abstractTitle'], 0, 'C', 0);
  98.  
  99. $x = $pdf -> GetX();
  100. $y = $pdf -> GetY();
  101. $pdf -> SetXY($x, $y + 10);
  102.  
  103. $pdf -> MultiCell(0, 5, $abstract['abstractText'], 0, 'J', 0);
  104. $pdf -> Footer();
  105.  
  106. $pdfOutput = htmlspecialchars($abstract['abstractAuthor'])." - ".htmlspecialchars($abstract['abstractTitle']).".pdf";
  107. $pdf -> Output('I', $pdfOutput);
  108. }
  109. }
  110. ?>
nospor
Opcja F zapisuje pdf do pliku
Opcja I pluje plik do przegladarki z naglowkami do sciagniecia

Niewazne czy masz F czy I to masz gdzies po drodze output. Tylko ze dla zapisania do pliku, to output nie przeszkadza ale gdy juz slesz dodatkowe naglowki (w opcji I) to nie mozesz miec wczesniej zadnego output. Ot i cala filozofia.

ps: ciagle mi sie wydaje iz pokazujesz niewlasciwy plik wink.gif
shpaque
problem w tym ze pokazuje wlasciwy plik a skoro on widzi dodatkowo blad w linii 35 to jakim cudem??

problem lezy gdzies podejrzewam jednak w pliku fpdf.php, bo kiedy ten sam skrypt mialem w pliku wewnatrz katalogu fpdf - bylo ok, a kiedy robie to z zewnatrz - robi sie taki michalek - a nie chce jak pisalem wyzej - wrzucac pliku do katalogu z fpdf
nospor
moze na serwerze masz inna wersje pliku niz pokazujesz nam tutaj.

Linia 35 to otwarcie nawiasu, tam nic nie ma.

ps: sprawdz logi bo byc moze masz blad o sciezkach
shpaque
teraz mam tak

  1. Fatal error: Uncaught exception 'Exception' with message 'FPDF error: Some data has already been output, can't send PDF file (output started at /home/smusic/ftp/_x-kaf/admin/abstracts.php:35)' in /home/smusic/ftp/_x-kaf/fpdf/fpdf.php:271 Stack trace: #0 /home/smusic/ftp/_x-kaf/fpdf/fpdf.php(1052): FPDF->Error('Some data has a...') #1 /home/smusic/ftp/_x-kaf/fpdf/fpdf.php(999): FPDF->_checkoutput() #2 /home/smusic/ftp/_x-kaf/php/abstracts.php(111): FPDF->Output('I', 'Hainz von Klops...') #3 /home/smusic/ftp/_x-kaf/admin/abstracts.php(103): include('/home/smusic/ft...') #4 {main} thrown in /home/smusic/ftp/_x-kaf/fpdf/fpdf.php on line 271
Pyton_000
przed

$pdf -> Output('I', $pdfOutput);

wstaw

die();

i zobacz w źródle co Ci wypluje.
trueblue
A swoją drogą, po co Ci klasa PDF, skoro jej nie używasz?
shpaque
jak mam die to mam pusto.

jak nie uzywam klasy?
trueblue
A gdzie używasz?
shpaque
jeszcze nie wiem gdzie uzywam - przeciez zdefiniowana jest a podobno idzie automatycznie po addpage
"This method is used to render the page header. It is automatically called by AddPage() and should not be called directly by the application."

a nie wiem bo ciagle siedze w bledach i nie moge sie bawic klasami dopoki nie wygeneruje w koncu tego pdfa! smile.gif

cos mi sie wydaje ze jedyna opcja to plik abstracts.pdf w folderze fpdf, bo inaczej lipa
nospor
Jesli masz to gdzies na serwerze to jesli mozesz to udostepnic, chocby na PW, to chetnie spojrze.
Jesli lokalnie to mozna sie podlaczyc przez teamviewer - rowneiz chetnie spojrze.
shpaque
problem ewidentnie jest po stronie fpdf ze sciezkami.

ten sam kod w pliku wrzuconym do folderu fpdf dziala bezblednie

wrzucilem "najnowsza" wersje bodajze 1.81 z 2015 roku biggrin.gif moze sprobuje nizsza...
Pyton_000
Czy to jest jedyny plik który się odpala?
Czy coś jest jeszcze po drodze?


Dodaj na początku pliku zaraz za <?php

ob_start();

a powyżej wypluwania PDF:

echo '<pre>'; var_dump(ob_get_flush());echo '</pre>';die();
nospor
A prosilem bys sprawdzil wlaciwy plik. Nawet napisalem ci sciezke z bledu a ty ciagle pokazywales zupelnie inny plik :/

plik, o ktory pluje sie php to ten
  1. <!doctype html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="keywords" content="">
  6. <meta name="description" content="">
  7. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  8. <link rel="shortcut icon" type="image/png" href="favicon.png">
  9.  
  10. <link rel="stylesheet" type="text/css" href="./css/bootstrap.min.css">
  11. <link rel="stylesheet" type="text/css" href="style.css">
  12. <link rel="stylesheet" type="text/css" href="./css/animate.min.css">
  13. <link rel="stylesheet" type="text/css" href="./css/font-awesome.min.css">
  14. <link href='https://fonts.googleapis.com/css?family=Cairo&amp;subset=latin,latin-ext' rel='stylesheet' type='text/css'>
  15.  
  16. <script src="./js/jquery-2.1.0.min.js"></script>
  17. <script src="./js/bootstrap.min.js"></script>
  18. <script src="./js/blocs.min.js"></script>
  19. <script src="./js/lazysizes.min.js" defer></script>
  20. <title>abstracts</title>
  21. <style>
  22. ::selection
  23. {
  24. background: #223b7e;
  25. color: #ffffff;
  26. }
  27.  
  28. ::-moz-selection
  29. {
  30. background: #223b7e;
  31. color: #ffffff;
  32. }
  33. </style>
  34.  
  35. <?php
  36. $file = fopen('./../db/counter.txt', 'r');
  37. $data = fread($file, filesize('./../db/counter.txt'));
  38. fclose($file);
  39. if ($data !== false)
  40. {
  41. $hits = intval($data);
  42. }
  43. ?>

Mimo najszczeszych checi nie potrafie zrozumiec co sobie myslales podajac zawziecie i uparcie zupelnie inny plik :/
Pyton_000
puke.gif thumbsdownsmileyanim.gif closedeyes.gif sciana.gif facepalmxd.gif
shpaque
no tak; include... smile.gif zupelnie o tym nie pomyslalem przeciez... smile.gif

ale o co mu chodzi - ze uzylem zmiennej $file, ktora jest zdefiniowana w fpdf.php?

czyli jak zmienie na inna zmienna bedzie ok?
Pyton_000
html wyświetlasz....
shpaque
dobra, pojechałem po bandzie - już się więcej dzisiaj nie kompromituję biggrin.gif
nospor
Cytat
zupelnie o tym nie pomyslalem przeciez.
Tam nie bylo nad czym myslec. Miales podane dokladnie o jaki plik chodzi Nie musiales zgadywac, sciezka byla podana od SAMEGO POCZATKU.
Na dodatek wielokrotnie ci mowilem ze podajesz nam zly plik. Mowilem bys sprawdzil sciezki. Nawet ci wkleilem dokladnie o jaki plik chodzi (wzialem z komunikatu bledu) a ty nadal swoje.

To juz nie pierwszy raz, gdy totalnie masz w 4 literach co ci ludzie pisza. Dlugo tak na forum nie pociagniesz, bo doprowadzisz do tego, ze z automatu twoje tematy beda zamykane. Ogarnij sie w koncu.
shpaque
tak tyle ze zarowno glowny plik (w /admin/) jak i include maja ta sama nazwe smile.gif
nospor
Naprawde nie rozrozniasz takich pojec jak
sciezka
nazwa
?

Caly czas miales podane PELNA SCIEZKE do pliku, a nie tylko jego nazwe... od samego poczatku bylo dokladnie wiadomo jaki to plik a nie jaka jego nazwa. Nawet teraz, wyklocasz sie o cos co tylko tobie sie uwidzialo.

Zeby ci to lepiej zobrazowac:
Dostajesz od kogos info:
Pod adresem taki a takim mozesz odebrac swoja nowa toyote.
A ty zamiast udac sie pod dany adres, to latasz po wszystkich salonach toyoty w Polsce po czym wielce zdziwiony bo przeciez tyle salonow w Polsce a ci nie podano o ktory chodzi...
shpaque
no dobra teraz jeszcze wracam do tematu na chwile - i polskich znakow, ale tym razem a tytule wygenerowanego pdfa.

mam tak:

  1. require('./../fpdf/fpdf.php');
  2. //require('./../fpdf/makefont/makefont.php');
  3. //MakeFont('./../fpdf/font/cairo.ttf', 'cp1250');
  4. //MakeFont('./../fpdf/font/cairo-bold.ttf', 'cp1250');
  5.  
  6. class PDF extends FPDF
  7. {
  8. function Header()
  9. {
  10. $this -> SetMargins(15, 15, 15);
  11. $this -> Image('./../img/xkaf-logo.png', 15, 20, 50);
  12.  
  13. $this -> AddFont('cairo', '', 'cairo.php');
  14. $this -> SetFont('cairo', '', 11);
  15. $this -> SetTextColor(50, 50, 50);
  16. $text = iconv('utf-8', 'windows-1250', 'Lublin, 20–21 września 2018 r.');
  17. $this -> Text(140, 25, $text, 0, 0, 'R');
  18. // Line break
  19. $this -> Ln(20);
  20. }
  21.  
  22. function Footer()
  23. {
  24. $this -> SetY(-13);
  25. $this -> AddFont('cairo', '', 'cairo.php');
  26. $this -> SetFont('cairo', '', 7);
  27. $this -> SetTextColor(130, 130, 130);
  28. $text = iconv('utf-8', 'windows-1250', 'Dokument wygenerowany przez stronę www X Konferencji Adeptów Fizjologii – www.adepci-fizjologii.pl');
  29. $this -> Cell(0, 15, $text, 0, 0, 'C');
  30. }
  31. }
  32.  
  33. $pdf = new PDF('P', 'mm', 'A4');
  34. $pdf -> AddPage('P');
  35. $pdf -> SetMargins(15, 15, 15);
  36. $pdf -> SetTextColor(50, 50, 50);
  37.  
  38. $pdf -> AddFont('cairo', '', 'cairo.php');
  39. $pdf -> AddFont('cairo', 'B', 'cairo-bold.php');
  40.  
  41. $pdf -> SetFont('cairo', 'B', 12);
  42. $text = iconv('utf-8', 'windows-1250', $abstract['abstractTitle']);
  43. $pdf -> SetTitle($text);
  44. $pdf -> SetFont('cairo', '', 12);
  45. $pdf -> SetSubject($text);
  46. $pdf -> SetAuthor('X Konferencja Adeptów Fizjologii');
  47. $pdf -> SetCreator('Skrypt PDF wykonany dla X Konferencji Adeptów Fizjologii');
  48.  
  49. $x = $pdf -> GetX();
  50. $y = $pdf -> GetY();
  51. $pdf -> SetXY($x, $y + 30);
  52. $pdf -> SetFont('cairo', 'B', 18);
  53. $pdf -> SetTextColor(0, 60, 150);
  54. $text = iconv('utf-8', 'windows-1250', $abstract['abstractTitle']);
  55. $pdf -> MultiCell(0, 8, $text, 0, 'C', 0);
  56.  
  57. $x = $pdf -> GetX();
  58. $y = $pdf -> GetY();
  59. $pdf -> SetXY($x, $y + 10);
  60.  
  61. $pdf -> SetFont('cairo', '', 12);
  62. $pdf -> SetTextColor(50, 50, 50);
  63. $text = iconv('utf-8', 'windows-1250', str_replace("<br>", "\r\n", $abstract['abstractText']));
  64. $pdf -> MultiCell(0, 6, $text, 0, 'J', 0);
  65.  
  66. $text = iconv('utf-8', 'windows-1250', $abstract['abstractAuthor']." - ".$abstract['abstractTitle'].".pdf");
  67. $pdf -> Output('I', $text);


wszedzie text ladnie sie koduje, oprocz naglowka pliku i title w samej przegladarce, gdzie kod dalej ma krzaczki
Pyton_000
A zadałeś sobie chociaż trud wpisania w google "fpdf polskie znaki" i sprawdzenia kilku rozwiązań? Nie sądzę....
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.