За последние 24 часа нас посетили 54908 программистов и 1775 роботов. Сейчас ищут 857 программистов ...

Как вывести текст из input в PHP (tcpdf) pdf генератор

Тема в разделе "PHP для новичков", создана пользователем DimaBLR, 20 фев 2017.

  1. DimaBLR

    DimaBLR Новичок

    С нами с:
    20 фев 2017
    Сообщения:
    16
    Симпатии:
    0
    Всем привет ! Помогите пожалуйста новичку. Мне нужно чтобы создавался файл-квитанция в pdf для оплаты, но данные с ФИО и суммой должны там быть из поля input после нажатия на кнопку. Сам файл у меня создаётся в pdf при подключенной библиотеке tcpdf, но как подставить эти переменные из input в квитанцию pdf. Вот что у меня выходит:

    HTML
    HTML:
    1. <form action="pdf.php" method="post">
    2. <p>Ваше имя: <input type="text" name="fio" /></p>
    3. <p>Сумма для оплаты: <input type="text" name="summa" /></p>
    4. <p><input type="submit" value="Получить квитанцию" /></p>
    5. </form>

    PHP
    PHP:
    1. <?
    2. require_once(dirname(__FILE__).'/tcpdf/config/lang/rus.php');
    3.  
    4. require_once(dirname(__FILE__).'/tcpdf/tcpdf.php');
    5.  
    6. class MYPDF_C extends TCPDF
    7.  
    8. {
    9.  
    10.     //Page header
    11.  
    12.     public function Header()
    13.  
    14.     {
    15.  
    16.     }
    17.  
    18.     // Page footer
    19.  
    20.     public function Footer()
    21.  
    22.     {
    23.  
    24.     }
    25.  
    26. }
    27.  
    28. // create new PDF document
    29.  
    30. $pdf = new MYPDF_C(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
    31.  
    32.  
    33. // ---------------------------------------------------------
    34.  
    35.  
    36. $pdf->AddPage();
    37.  
    38. $pdf->setFontStretching(105);
    39.  
    40. $pdf->SetFont('freesans', 'B', 9);
    41.  
    42. $pdf->Text(20, 22, iconv("WINDOWS-1251","UTF-8", 'Извещение' ));
    43.  
    44. $pdf->Text(23, 81, iconv("WINDOWS-1251","UTF-8", 'Кассир' ));
    45.  
    46. $pdf->Text(20, 142, iconv("WINDOWS-1251","UTF-8", 'Квитанция' ));
    47.  
    48. $pdf->Text(23, 151, iconv("WINDOWS-1251","UTF-8", 'Кассир' ));
    49.  
    50.  
    51. $pdf->SetFont('freesans', 'B', 8);
    52.  
    53. $pdf->Text(54, 22, iconv("WINDOWS-1251","UTF-8", 'СБЕРБАНК РОССИИ' ));
    54.  
    55. $pdf->SetFont('freesans', '', 5);
    56.  
    57. $pdf->Text(54, 26, iconv("WINDOWS-1251","UTF-8", 'Основан в 1841 году' ));
    58.  
    59.  
    60. $pdf->SetFont('freesans', 'I', 5);
    61.  
    62. $pdf->Text(178.5, 23, iconv("WINDOWS-1251","UTF-8", 'Форма № ПД-4' ));
    63.  
    64.  
    65. $pdf->SetDrawColor(0);
    66.  
    67. $pdf->SetLineWidth(0.3);
    68.  
    69.  
    70. $pdf->Line(9,20,197,20);
    71.  
    72. $pdf->Line(197,20,197,160);
    73.  
    74. $pdf->Line(9,20,9,160);
    75.  
    76. $pdf->Line(9,160,197,160);
    77.  
    78. $pdf->Line(9,90,197,90);
    79.  
    80. $pdf->Line(50.7,20,50.7,160);
    81.  
    82.  
    83. $pdf->Line(55,$s+26,87,$s+26);
    84.  
    85.  
    86. //для двух проходов: нижнего и верхнего
    87.  
    88. $s_arr = array(-0.5, 70);
    89.  
    90. foreach($s_arr as $s)
    91.  
    92. {
    93.  
    94. //Линии
    95.  
    96. $pdf->Line(55,$s+32,192,$s+32);
    97.  
    98.  
    99.  
    100.  
    101. $pdf->Line(55,$s+35,103,$s+35);
    102.  
    103. $pdf->Line(55,$s+39,103,$s+39);
    104.  
    105.  
    106. $a=55;
    107.  
    108. for($i=0; $i<13; $i++)
    109.  
    110. {
    111.  
    112.     $pdf->Line($a,$s+35,$a,$s+39);
    113.  
    114.     $a = $a+4;
    115.  
    116. }
    117.  
    118.  
    119. $pdf->Line(112,$s+35,192,$s+35);
    120.  
    121. $pdf->Line(112,$s+39,192,$s+39);
    122.  
    123.  
    124. $a=192;
    125.  
    126. for($i=0; $i<21; $i++)
    127.  
    128. {
    129.  
    130.     $pdf->Line($a,$s+35,$a,$s+39);
    131.  
    132.     $a = $a-4;
    133.  
    134. }
    135.  
    136.  
    137. $pdf->Line(156,$s+42,192,$s+42);
    138.  
    139. $pdf->Line(156,$s+46,192,$s+46);
    140.  
    141. $pdf->Line(60,$s+46,144,$s+46);
    142.  
    143.  
    144. $a=192;
    145.  
    146. for($i=0; $i<10; $i++)
    147.  
    148. {
    149.  
    150.     $pdf->Line($a,$s+42,$a,$s+46);
    151.  
    152.     $a = $a-4;
    153.  
    154. }
    155.  
    156.  
    157. $pdf->Line(112,$s+47,192,$s+47);
    158.  
    159. $pdf->Line(112,$s+51,192,$s+51);
    160.  
    161.  
    162. $a=192;
    163.  
    164. for($i=0; $i<21; $i++)
    165.  
    166. {
    167.  
    168.     $pdf->Line($a,$s+47,$a,$s+51);
    169.  
    170.     $a = $a-4;
    171.  
    172. }
    173.  
    174.  
    175. $pdf->Line(55,$s+55,128,$s+55);
    176.  
    177. $pdf->Line(136,$s+55,192,$s+55);
    178.  
    179.  
    180. $pdf->Line(88,$s+62,192,$s+62);
    181.  
    182. $pdf->Line(88,$s+67,192,$s+67);
    183.  
    184.  
    185. $pdf->Line(80,$s+73,95,$s+73);
    186.  
    187. $pdf->Line(103,$s+73,110,$s+73);
    188.  
    189.  
    190. $pdf->Line(164,$s+73,173,$s+73);
    191.  
    192. $pdf->Line(180,$s+73,185,$s+73);
    193.  
    194.  
    195. $pdf->Line(66,$s+78,81,$s+78);
    196.  
    197. $pdf->Line(89,$s+78,96,$s+78);
    198.  
    199. $pdf->Line(140,$s+78,148,$s+78);
    200.  
    201. $pdf->Line(151,$s+78,180,$s+78);
    202.  
    203. $pdf->Line(186,$s+78,189,$s+78);
    204.  
    205. $pdf->Line(150,$s+88.6,192,$s+88.6);
    206.  
    207.  
    208. //ТЕКСТЫ
    209.  
    210. $pdf->SetFont('freesans', '', 6);
    211.  
    212.  
    213. $pdf->Text(104, $s+32, iconv("WINDOWS-1251","UTF-8", '(наименование получателя платежа)' ));
    214.  
    215.  
    216. $pdf->SetFont('freesans', '', 6);
    217.  
    218. $pdf->Text(65, $s+39, iconv("WINDOWS-1251","UTF-8", '(ИНН получателя платежа)' ));
    219.  
    220. $pdf->Text(135, $s+39, iconv("WINDOWS-1251","UTF-8", '(номер счета получателя платежа)' ));
    221.  
    222.  
    223. $pdf->SetFont('freesans', '', 8);
    224.  
    225.  
    226. $pdf->Text(148, $s+42.5, iconv("WINDOWS-1251","UTF-8", 'БИК' ));
    227.  
    228.  
    229. $pdf->SetFont('freesans', '', 7);
    230.  
    231. $pdf->Text(55, $s+47, iconv("WINDOWS-1251","UTF-8", 'Номер кор./сч.банка получателя платежа' ));
    232.  
    233.  
    234. $pdf->SetFont('freesans', 'B', 9);
    235.  
    236. $pdf->Text(65, $s+51, iconv("WINDOWS-1251","UTF-8", 'оплата за что-нибудь' ));
    237.  
    238.  
    239. $pdf->SetFont('freesans', '', 6);
    240.  
    241. $pdf->Text(80, $s+55, iconv("WINDOWS-1251","UTF-8", '(наименование платежа)' ));
    242.  
    243. $pdf->Text(141, $s+55, iconv("WINDOWS-1251","UTF-8", '(номер лицевого счета (код) плательщика)' ));
    244.  
    245.  
    246. $pdf->SetFont('freesans', '', 8);
    247.  
    248. $pdf->Text(55, $s+59, iconv("WINDOWS-1251","UTF-8", 'Ф.И.О. Плательщика' ));
    249.  
    250.  
    251. $pdf->SetFont('freesans', '', 8);
    252.  
    253. $pdf->Text(55, $s+64, iconv("WINDOWS-1251","UTF-8", 'Адрес плательщика' ));
    254.  
    255.  
    256. $pdf->SetFont('freesans', '', 8);
    257.  
    258. $pdf->Text(55, $s+70, iconv("WINDOWS-1251","UTF-8", 'Сумма платежа' ));
    259.  
    260. $pdf->Text(96, $s+70, iconv("WINDOWS-1251","UTF-8", 'руб.' ));
    261.  
    262. $pdf->Text(110, $s+70, iconv("WINDOWS-1251","UTF-8", 'коп.' ));
    263.  
    264.  
    265. $pdf->Text(130, $s+70, iconv("WINDOWS-1251","UTF-8", 'Сумма платы за услуги' ));
    266.  
    267.  
    268. $pdf->Text(173, $s+70, iconv("WINDOWS-1251","UTF-8", 'руб.' ));
    269.  
    270. $pdf->Text(185, $s+70, iconv("WINDOWS-1251","UTF-8", 'коп.' ));
    271.  
    272. $pdf->Text(55, $s+75, iconv("WINDOWS-1251","UTF-8", 'Итого' ));
    273.  
    274. $pdf->Text(82, $s+75, iconv("WINDOWS-1251","UTF-8", 'руб.' ));
    275.  
    276. $pdf->Text(96, $s+75, iconv("WINDOWS-1251","UTF-8", 'коп.' ));
    277.  
    278. $pdf->Text(138, $s+75, iconv("WINDOWS-1251","UTF-8", '"' ));
    279.  
    280. $pdf->Text(147, $s+75, iconv("WINDOWS-1251","UTF-8", '"' ));
    281.  
    282. $pdf->Text(180, $s+75, iconv("WINDOWS-1251","UTF-8", '201' ));
    283.  
    284. $pdf->Text(189, $s+75, iconv("WINDOWS-1251","UTF-8", 'г.' ));
    285.  
    286.  
    287. $pdf->SetFont('freesans', '', 6);
    288.  
    289. $pdf->Text(55, $s+80, iconv("WINDOWS-1251","UTF-8", 'С условиями приема указанной в платежном документе суммы, в т.ч. с суммой взимаемой платы за услуги' ));
    290.  
    291. $pdf->Text(55, $s+83, iconv("WINDOWS-1251","UTF-8", 'банка, ознакомлен и согласен' ));
    292.  
    293.  
    294. $pdf->SetFont('freesans', 'B', 7);
    295.  
    296. $pdf->Text(119, $s+85, iconv("WINDOWS-1251","UTF-8", 'Подпись плательщика' ));
    297.  
    298.  
    299. //Заполняем данные предприятия
    300.  
    301.  
    302. $pdf->SetFont('freesans', '', 10);
    303.  
    304. $pdf->Text(61, $s+28, iconv("WINDOWS-1251","UTF-8", 'Индивидуальный предприниматель Кукареков Николай Владимирович' ));
    305.  
    306.  
    307. //Банк
    308.  
    309.  
    310. $pdf->SetFont('freesans', '', 7);
    311.  
    312. $pdf->Text(55, $s+42.5, iconv("WINDOWS-1251","UTF-8", 'в' ));
    313.  
    314. $pdf->Text(59, $s+42.5, iconv("WINDOWS-1251","UTF-8", 'Северо-Западный банк ОАО "Сбербанк России"  г.Санкт-Петербург' ));
    315.  
    316.  
    317. //Заполняем данные клиента
    318.  
    319.  
    320. $fio = "Иванов Иван Иванович";
    321.  
    322.  
    323. $summa_rub = "20555";
    324.  
    325.  
    326. $summa_kop = "20";
    327.  
    328.  
    329. $id_order = 298777;
    330.  
    331.  
    332. $pdf->SetFont('freesans', 'B', 10);
    333.  
    334.  
    335. //ИНН получателя платежа (12-значный)
    336.  
    337.  
    338. $a=55;
    339.  
    340. $arr = array(4,8,2,0,0,1,5,6,8,0,1,1);
    341.  
    342. for($i=0; $i<12; $i++)
    343.  
    344. {
    345.  
    346.     $pdf->Text($a, $s+34.8, $arr[$i]);
    347.  
    348.     $a = $a + 4;
    349.  
    350. }
    351.  
    352.  
    353. //номер счета получателя платежа (20-значный)
    354.  
    355.  
    356. $a=112;
    357.  
    358. $arr = array(4,0,8,0,2,8,1,0,2,5,5,1,4,0,0,0,0,5,7,7);
    359.  
    360. for($i=0; $i<20; $i++)
    361.  
    362. {
    363.  
    364.     $pdf->Text($a, $s+34.8, $arr[$i]);
    365.  
    366.     $a = $a + 4;
    367.  
    368. }
    369.  
    370.  
    371. //БИК (9-значный)
    372.  
    373.  
    374. $a=156;
    375.  
    376. $arr = array(0,4,4,0,3,0,6,5,3);
    377.  
    378. for($i=0; $i<9; $i++)
    379.  
    380. {
    381.  
    382.     $pdf->Text($a, $s+42, $arr[$i]);
    383.  
    384.     $a = $a + 4;
    385.  
    386. }
    387.  
    388.  
    389. //Номер кор./сч.банка получателя платежа (20-значный)
    390.  
    391.  
    392. $a=112;
    393.  
    394. $arr = array(3,0,1,0,1,8,1,0,5,0,0,0,0,0,0,0,0,6,5,3);
    395.  
    396. for($i=0; $i<20; $i++)
    397.  
    398. {
    399.  
    400.     $pdf->Text($a, $s+46.7, $arr[$i]);
    401.  
    402.     $a = $a + 4;
    403.  
    404. }
    405.  
    406.  
    407. $pdf->SetFont('freesans', '', 10);
    408.  
    409.  
    410. $pdf->Text(88, $s+58, iconv("WINDOWS-1251","UTF-8", $fio));
    411.  
    412. $pdf->Text(80, $s+69, iconv("WINDOWS-1251","UTF-8", $summa_rub));
    413.  
    414. $pdf->Text(103.5, $s+69, iconv("WINDOWS-1251","UTF-8", $summa_kop));
    415.  
    416. }
    417.  
    418.  
    419. //Создаем реальный файл PDF с именем клиента и номером заказа
    420.  
    421.  
    422. //Папка, в которую пишем, должна иметь доступ 777
    423.  
    424.  
    425. $fio_utf = iconv("CP1251", "UTF-8", $fio);
    426.  
    427. $pdf->Output($_SERVER['DOCUMENT_ROOT']."/pdf/kvit/".$fio_utf.' '.$id_order.".pdf", "F");
    428.  
    429.  
    430. //И открываем его в текущем окне
    431.  
    432.  
    433. $URL='http://'.$_SERVER['HTTP_HOST'].'/pdf/kvit/'.$fio_utf.' '.$id_order.'.pdf';
    434.  
    435. header ("Location: $URL");
    436. ?>

    То есть проще говоря я хочу чтобы из Html подставлялись данные в генерируемый Pdf файл вот сюда
    [​IMG]


    Если я делаю так в генерируемом файле то ничего вообще не выводит
    PHP:
    1. echo $_POST['fio'];
     
    #1 DimaBLR, 20 фев 2017
    Последнее редактирование модератором: 20 фев 2017
  2. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.816
    Симпатии:
    1.333
    Адрес:
    Лень
    Вырви глаз, оформи код правильно
     
    mahmuzar нравится это.
  3. alexblack

    alexblack Старожил

    С нами с:
    20 янв 2016
    Сообщения:
    640
    Симпатии:
    381
    Когда полностью запустил твой код,у меня были проблемы с кодировкой.Не корректно отображались входные данные. Про вырви глаз это верно.Нужно оформлять код нормально и жалеть чужие глаза.Я решил твою проблему + добавил немного фильтрации принимаемых $_POST данных.Вот код:

    PHP:
    1. require_once(dirname(__FILE__).'/tcpdf/config/lang/rus.php');
    2.  
    3. require_once(dirname(__FILE__).'/tcpdf/tcpdf.php');
    4.  
    5. class MYPDF_C extends TCPDF
    6.  
    7. {
    8.  
    9. //Page header
    10.  
    11. public function Header()
    12.  
    13. {
    14.  
    15. }
    16.  
    17. // Page footer
    18.  
    19. public function Footer()
    20.  
    21. {
    22.  
    23. }
    24.  
    25. }
    26.  
    27. // create new PDF document
    28.  
    29. $pdf = new MYPDF_C(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
    30.  
    31.  
    32. // ---------------------------------------------------------
    33.  
    34.  
    35. $pdf->AddPage();
    36.  
    37. $pdf->setFontStretching(105);
    38.  
    39. $pdf->SetFont('freesans', 'B', 9);
    40.  
    41. $pdf->Text(20, 22, iconv("WINDOWS-1251","UTF-8", 'Извещение' ));
    42.  
    43. $pdf->Text(23, 81, iconv("WINDOWS-1251","UTF-8", 'Кассир' ));
    44.  
    45. $pdf->Text(20, 142, iconv("WINDOWS-1251","UTF-8", 'Квитанция' ));
    46.  
    47. $pdf->Text(23, 151, iconv("WINDOWS-1251","UTF-8", 'Кассир' ));
    48.  
    49.  
    50. $pdf->SetFont('freesans', 'B', 8);
    51.  
    52. $pdf->Text(54, 22, iconv("WINDOWS-1251","UTF-8", 'СБЕРБАНК РОССИИ' ));
    53.  
    54. $pdf->SetFont('freesans', '', 5);
    55.  
    56. $pdf->Text(54, 26, iconv("WINDOWS-1251","UTF-8", 'Основан в 1841 году' ));
    57.  
    58.  
    59. $pdf->SetFont('freesans', 'I', 5);
    60.  
    61. $pdf->Text(178.5, 23, iconv("WINDOWS-1251","UTF-8", 'Форма № ПД-4' ));
    62.  
    63.  
    64. $pdf->SetDrawColor(0);
    65.  
    66. $pdf->SetLineWidth(0.3);
    67.  
    68.  
    69. $pdf->Line(9,20,197,20);
    70.  
    71. $pdf->Line(197,20,197,160);
    72.  
    73. $pdf->Line(9,20,9,160);
    74.  
    75. $pdf->Line(9,160,197,160);
    76.  
    77. $pdf->Line(9,90,197,90);
    78.  
    79. $pdf->Line(50.7,20,50.7,160);
    80.  
    81.  
    82. $pdf->Line(55,$s+26,87,$s+26);
    83.  
    84.  
    85. //для двух проходов: нижнего и верхнего
    86.  
    87. $s_arr = array(-0.5, 70);
    88.  
    89. foreach($s_arr as $s)
    90.  
    91. {
    92.  
    93. //Линии
    94.  
    95. $pdf->Line(55,$s+32,192,$s+32);
    96.  
    97.  
    98.  
    99.  
    100. $pdf->Line(55,$s+35,103,$s+35);
    101.  
    102. $pdf->Line(55,$s+39,103,$s+39);
    103.  
    104.  
    105. $a=55;
    106.  
    107. for($i=0; $i<13; $i++)
    108.  
    109. {
    110.  
    111. $pdf->Line($a,$s+35,$a,$s+39);
    112.  
    113. $a = $a+4;
    114.  
    115. }
    116.  
    117.  
    118. $pdf->Line(112,$s+35,192,$s+35);
    119.  
    120. $pdf->Line(112,$s+39,192,$s+39);
    121.  
    122.  
    123. $a=192;
    124.  
    125. for($i=0; $i<21; $i++)
    126.  
    127. {
    128.  
    129. $pdf->Line($a,$s+35,$a,$s+39);
    130.  
    131. $a = $a-4;
    132.  
    133. }
    134.  
    135.  
    136. $pdf->Line(156,$s+42,192,$s+42);
    137.  
    138. $pdf->Line(156,$s+46,192,$s+46);
    139.  
    140. $pdf->Line(60,$s+46,144,$s+46);
    141.  
    142.  
    143. $a=192;
    144.  
    145. for($i=0; $i<10; $i++)
    146.  
    147. {
    148.  
    149. $pdf->Line($a,$s+42,$a,$s+46);
    150.  
    151. $a = $a-4;
    152.  
    153. }
    154.  
    155.  
    156. $pdf->Line(112,$s+47,192,$s+47);
    157.  
    158. $pdf->Line(112,$s+51,192,$s+51);
    159.  
    160.  
    161. $a=192;
    162.  
    163. for($i=0; $i<21; $i++)
    164.  
    165. {
    166.  
    167. $pdf->Line($a,$s+47,$a,$s+51);
    168.  
    169. $a = $a-4;
    170.  
    171. }
    172.  
    173.  
    174. $pdf->Line(55,$s+55,128,$s+55);
    175.  
    176. $pdf->Line(136,$s+55,192,$s+55);
    177.  
    178.  
    179. $pdf->Line(88,$s+62,192,$s+62);
    180.  
    181. $pdf->Line(88,$s+67,192,$s+67);
    182.  
    183.  
    184. $pdf->Line(80,$s+73,95,$s+73);
    185.  
    186. $pdf->Line(103,$s+73,110,$s+73);
    187.  
    188.  
    189. $pdf->Line(164,$s+73,173,$s+73);
    190.  
    191. $pdf->Line(180,$s+73,185,$s+73);
    192.  
    193.  
    194. $pdf->Line(66,$s+78,81,$s+78);
    195.  
    196. $pdf->Line(89,$s+78,96,$s+78);
    197.  
    198. $pdf->Line(140,$s+78,148,$s+78);
    199.  
    200. $pdf->Line(151,$s+78,180,$s+78);
    201.  
    202. $pdf->Line(186,$s+78,189,$s+78);
    203.  
    204. $pdf->Line(150,$s+88.6,192,$s+88.6);
    205.  
    206.  
    207. //ТЕКСТЫ
    208.  
    209. $pdf->SetFont('freesans', '', 6);
    210.  
    211.  
    212. $pdf->Text(104, $s+32, iconv("WINDOWS-1251","UTF-8", '(наименование получателя платежа)' ));
    213.  
    214.  
    215. $pdf->SetFont('freesans', '', 6);
    216.  
    217. $pdf->Text(65, $s+39, iconv("WINDOWS-1251","UTF-8", '(ИНН получателя платежа)' ));
    218.  
    219. $pdf->Text(135, $s+39, iconv("WINDOWS-1251","UTF-8", '(номер счета получателя платежа)' ));
    220.  
    221.  
    222. $pdf->SetFont('freesans', '', 8);
    223.  
    224.  
    225. $pdf->Text(148, $s+42.5, iconv("WINDOWS-1251","UTF-8", 'БИК' ));
    226.  
    227.  
    228. $pdf->SetFont('freesans', '', 7);
    229.  
    230. $pdf->Text(55, $s+47, iconv("WINDOWS-1251","UTF-8", 'Номер кор./сч.банка получателя платежа' ));
    231.  
    232.  
    233. $pdf->SetFont('freesans', 'B', 9);
    234.  
    235. $pdf->Text(65, $s+51, iconv("WINDOWS-1251","UTF-8", 'оплата за что-нибудь' ));
    236.  
    237.  
    238. $pdf->SetFont('freesans', '', 6);
    239.  
    240. $pdf->Text(80, $s+55, iconv("WINDOWS-1251","UTF-8", '(наименование платежа)' ));
    241.  
    242. $pdf->Text(141, $s+55, iconv("WINDOWS-1251","UTF-8", '(номер лицевого счета (код) плательщика)' ));
    243.  
    244.  
    245. $pdf->SetFont('freesans', '', 8);
    246.  
    247. $pdf->Text(55, $s+59, iconv("WINDOWS-1251","UTF-8", 'Ф.И.О. Плательщика' ));
    248.  
    249.  
    250. $pdf->SetFont('freesans', '', 8);
    251.  
    252. $pdf->Text(55, $s+64, iconv("WINDOWS-1251","UTF-8", 'Адрес плательщика' ));
    253.  
    254.  
    255. $pdf->SetFont('freesans', '', 8);
    256.  
    257. $pdf->Text(55, $s+70, iconv("WINDOWS-1251","UTF-8", 'Сумма платежа' ));
    258.  
    259. $pdf->Text(96, $s+70, iconv("WINDOWS-1251","UTF-8", 'руб.' ));
    260.  
    261. $pdf->Text(110, $s+70, iconv("WINDOWS-1251","UTF-8", 'коп.' ));
    262.  
    263.  
    264. $pdf->Text(130, $s+70, iconv("WINDOWS-1251","UTF-8", 'Сумма платы за услуги' ));
    265.  
    266.  
    267. $pdf->Text(173, $s+70, iconv("WINDOWS-1251","UTF-8", 'руб.' ));
    268.  
    269. $pdf->Text(185, $s+70, iconv("WINDOWS-1251","UTF-8", 'коп.' ));
    270.  
    271. $pdf->Text(55, $s+75, iconv("WINDOWS-1251","UTF-8", 'Итого' ));
    272.  
    273. $pdf->Text(82, $s+75, iconv("WINDOWS-1251","UTF-8", 'руб.' ));
    274.  
    275. $pdf->Text(96, $s+75, iconv("WINDOWS-1251","UTF-8", 'коп.' ));
    276.  
    277. $pdf->Text(138, $s+75, iconv("WINDOWS-1251","UTF-8", '"' ));
    278.  
    279. $pdf->Text(147, $s+75, iconv("WINDOWS-1251","UTF-8", '"' ));
    280.  
    281. $pdf->Text(180, $s+75, iconv("WINDOWS-1251","UTF-8", '201' ));
    282.  
    283. $pdf->Text(189, $s+75, iconv("WINDOWS-1251","UTF-8", 'г.' ));
    284.  
    285.  
    286. $pdf->SetFont('freesans', '', 6);
    287.  
    288. $pdf->Text(55, $s+80, iconv("WINDOWS-1251","UTF-8", 'С условиями приема указанной в платежном документе суммы, в т.ч. с суммой взимаемой платы за услуги' ));
    289.  
    290. $pdf->Text(55, $s+83, iconv("WINDOWS-1251","UTF-8", 'банка, ознакомлен и согласен' ));
    291.  
    292.  
    293. $pdf->SetFont('freesans', 'B', 7);
    294.  
    295. $pdf->Text(119, $s+85, iconv("WINDOWS-1251","UTF-8", 'Подпись плательщика' ));
    296.  
    297.  
    298. //Заполняем данные предприятия
    299.  
    300.  
    301. $pdf->SetFont('freesans', '', 10);
    302.  
    303. $pdf->Text(61, $s+28, iconv("WINDOWS-1251","UTF-8", 'Индивидуальный предприниматель Кукареков Николай Владимирович' ));
    304.  
    305.  
    306. //Банк
    307.  
    308.  
    309. $pdf->SetFont('freesans', '', 7);
    310.  
    311. $pdf->Text(55, $s+42.5, iconv("WINDOWS-1251","UTF-8", 'в' ));
    312.  
    313. $pdf->Text(59, $s+42.5, iconv("WINDOWS-1251","UTF-8", 'Северо-Западный банк ОАО "Сбербанк России" г.Санкт-Петербург' ));
    314.  
    315.  
    316. //Заполняем данные клиента
    317.  
    318.  
    319. $fio = filter_var($_POST['fio'],FILTER_SANITIZE_STRING);
    320.  
    321.  
    322. $summa = filter_var($_POST['summa'],FILTER_SANITIZE_STRING);
    323.  
    324.  
    325.  
    326. $pdf->SetFont('freesans', 'B', 10);
    327.  
    328.  
    329. //ИНН получателя платежа (12-значный)
    330.  
    331.  
    332. $a=55;
    333.  
    334. $arr = array(4,8,2,0,0,1,5,6,8,0,1,1);
    335.  
    336. for($i=0; $i<12; $i++)
    337.  
    338. {
    339.  
    340. $pdf->Text($a, $s+34.8, $arr[$i]);
    341.  
    342. $a = $a + 4;
    343.  
    344. }
    345.  
    346.  
    347. //номер счета получателя платежа (20-значный)
    348.  
    349.  
    350. $a=112;
    351.  
    352. $arr = array(4,0,8,0,2,8,1,0,2,5,5,1,4,0,0,0,0,5,7,7);
    353.  
    354. for($i=0; $i<20; $i++)
    355.  
    356. {
    357.  
    358. $pdf->Text($a, $s+34.8, $arr[$i]);
    359.  
    360. $a = $a + 4;
    361.  
    362. }
    363.  
    364.  
    365. //БИК (9-значный)
    366.  
    367.  
    368. $a=156;
    369.  
    370. $arr = array(0,4,4,0,3,0,6,5,3);
    371.  
    372. for($i=0; $i<9; $i++)
    373.  
    374. {
    375.  
    376. $pdf->Text($a, $s+42, $arr[$i]);
    377.  
    378. $a = $a + 4;
    379.  
    380. }
    381.  
    382.  
    383. //Номер кор./сч.банка получателя платежа (20-значный)
    384.  
    385.  
    386. $a=112;
    387.  
    388. $arr = array(3,0,1,0,1,8,1,0,5,0,0,0,0,0,0,0,0,6,5,3);
    389.  
    390. for($i=0; $i<20; $i++)
    391.  
    392. {
    393.  
    394. $pdf->Text($a, $s+46.7, $arr[$i]);
    395.  
    396. $a = $a + 4;
    397.  
    398. }
    399.  
    400.  
    401. $pdf->SetFont('freesans', '', 10);
    402.  
    403.  
    404. $pdf->Text(88, $s+58, $fio);
    405.  
    406. $pdf->Text(80, $s+69, iconv("WINDOWS-1251","UTF-8", $summa));
    407.  
    408. //$pdf->Text(103.5, $s+69, iconv("WINDOWS-1251","UTF-8", $summa_kop));
    409.  
    410. }
    411.  
    412.  
    413. //Создаем реальный файл PDF с именем клиента и номером заказа
    414.  
    415.  
    416. //Папка, в которую пишем, должна иметь доступ 777
    417.  
    418.  
    419.  
    420. $pdf->Output($_SERVER['DOCUMENT_ROOT']."/pdf/kvit/".$fio.' '.$id_order.".pdf", "F");
    421.  
    422.  
    423. //И открываем его в текущем окне
    424.  
    425.  
    426. $URL='http://'.$_SERVER['HTTP_HOST'].'/pdf/kvit/'.$fio.' '.$id_order.'.pdf';
    427.  
    428. header ("Location: $URL");
    429. ?>
    Форма:
    [​IMG]

    Результат:
    [​IMG]

    Могут возникнуть проблемы с кодировкой,но я думаю с этим ты справишься если что.
     
    DimaBLR нравится это.
  4. DimaBLR

    DimaBLR Новичок

    С нами с:
    20 фев 2017
    Сообщения:
    16
    Симпатии:
    0

    ОГРОМНОЕ ТЕБЕ СПАСИБО !!!!!!!!!!!!!!!!!!!!!!!!!!!! Вчера 4 часа убил и так не решил эту проблему !!!!!!!!! СУПЕР !!!!!!!!!!!!!
     
  5. DimaBLR

    DimaBLR Новичок

    С нами с:
    20 фев 2017
    Сообщения:
    16
    Симпатии:
    0
  6. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    мало вероятно, воссоздай форму на HTML и с помощью domPDF или других инструментов переконвертируй в PDF
     
  7. DimaBLR

    DimaBLR Новичок

    С нами с:
    20 фев 2017
    Сообщения:
    16
    Симпатии:
    0
    Дело в том что так я и сделал, НО генерируемая форма отличается от оригинальной, а это критично
     
  8. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    @DimaBLR на HTML можно многое допилить.
    Тогда думаю стоит поискать платные API по редактированию PDF. Что-то на подобии http://www.pdfonline.com/easypdf/sdk/features.htm
    Ещё можно изучить как для PDF делать шаблоны, которые потом можно заполнить и сверстать нужную форму под этот вариант.
    Самый простой вариант, это заказать шаблон той анкеты в LaTeX он специально сделан, чтобы очень точно печатать, потом его легко заполнить и конвертировать в PDF