Как правильно настроить jsPF


frontend2020
119
Есть вопрос по интеграции jsPDF с формой заявки и сохранением готового PDF с данными из формы в папку на сервере.
 
Данные идут из поиска изображений: https://bundlespace.com/search&logotype
Пример url request > https://bundlespace.com/register-license?image=10002

Это ok.

Далее ввод данных пользователя в форме регистрации лицензии.

По клику на Register now > переход к процессингу https://bundlespace.com/processing/

По идее на эту кнопку подвесить onClick event (печать PDF по введенным данным пользователя) — вставить в тело PDF лицензии по заданным переменным,

сохранить в PDF >

$content = #extendedLicenseData (includes $fullname, $location, $today (date), $image)

путь  «/upload/pdf/extended-license-‘.$unique.’-for-logotype-‘.image.’.pdf»

приложить к письму и отправлять в support@…

Код процессинга:

<?php

$image = trim($_POST[‘image’]);

$fullname = trim($_POST[‘fullname’]);

$organization = trim($_POST[‘organization’]);

$location = trim($_POST[‘location’]);

$paypal = trim($_POST[‘paypal’]);

$today = date(«Ymd»);

$rand = strtoupper(substr(uniqid(sha1(time())),0,4));

$unique = $today . $rand;

// указываем адрес отправителя, можно указать адрес на домене Вашего сайта

$fromMail=»admin@bundlespace.com»;

$fromName=»Support»;

// Сюда введите Ваш email

$emailTo = ‘support@bundlespace.com’;

$subject=»Order the extended license №».$unique .»;

$subject=»=?utf-8?b?». base64_encode($subject) .’?=’;

$headers = «Content-type: text/plain; charset=»utf-8″rn»;

$headers .= «From: «. $fromName .» <«. $fromMail .»> rn»;

// тело письма

$body = «Order the extended license №$uniquennChosen image: $imagennView in base: https://docs.google.com/…nnFull name: $fullname nnCompany: $organizationnnLocation: $locationnn PayPal: $paypalnn»;

if (strlen($paypal) > 0) {

$mail = mail($emailTo, $subject, $body, $headers, ‘-f’. $fromMail );

}

$content=»<div id=»extendedLicenseData» style=»display:none;width:530px;height:822px;padding:30px;font-family:Times New Roman;line-height:1.5em» align=»center»>

<p align=»center»><img src=»https://searchengines.guru/upload/tmp/license-header.png» border=»0″ width=»530px» height=»85px» align=»center»></p>

<br><br>

<p align=»center»><br><img src=»https://searchengines.guru/upload/tmp/h1-extended-license-for-logotype.png» border=»0″ width=»530px» height=»32px» align=»center»></p>

<p align=»center»>Date of registration: <b>».$today.'</b></p>

<br>

<p align=»left»>

<b>DESCRIPTION</b><br><img src=»https://bundlespace.com/search/i/catalog/premium-graphics/abstract-flowers/watermark/twirl-flower-bud.png» style=»margin:0 20px 0 20px» width=»150″ height=»150″ alt=»» border=»0″ align=»right»>Full rights for commercial use of the Image ‘.$image.’ in this Extended License is goes from designer Egor Polyakov (Saint-Petersburg, Russia) to new Owner ‘.$fullname.’ (‘.$location.’) for logotype of the company.

</p>

<p align=»left»>Extended license: <b>’.$unique.'</b></p>

<br>

<p align=»left»><b><small>LEGAL USE OF LOGOTYPE FOR OWNER</small></b><br><small>BundleSpace(.com) confirm rights of&nbsp;Legal Owner for&nbsp;use of&nbsp;created logotype at&nbsp;all&nbsp;conditions of&nbsp;Extended License.</small></p>

<p align=»left»><b><small>DESIGNER:</small></b> Egor Polyakov</p>

<p align=»left»><b><small>NEW OWNER OF IMAGE:</small></b><br><b>’.$fullname.'</b></p>

<br><br><br><br><br>

<small align=»left»>

<p align=»left»><b>NOTICES</b><br>1.&nbsp;Extended license for&nbsp;vector image is&nbsp;the&nbsp;right to&nbsp;commercial use of&nbsp;this&nbsp;image as&nbsp;logotype (emblem) for&nbsp;multi&nbsp;copied printing and&nbsp;digital products.<br>2.&nbsp;Extended license is&nbsp;not&nbsp;connected with&nbsp;Madrid&nbsp;Trademark Registration&nbsp;System.</p>

</small>

</div>’

?>

<div class=»helloBlock» id=»registerCard» style=»height:auto;background:#f4f4f4″>

<h1>Payment for<span class=»hidden»>&nbsp;registration the</span>&nbsp;Extended license</h1>

<iframe src=»https://searchengines.guru/processing/first-screen.html» width=»100%» height=»350px» frameborder=»0″ scrolling=»no» class=»screenView»></iframe>

</div>

<script type=»text/javascript»>

function demoFromHTML() {

var pdf = new jsPDF(‘p’, ‘pt’, ‘letter’);

// source can be HTML-formatted string, or a reference

// to an actual DOM element from which the text will be scraped.

source = $(‘#extendedLicense’)[0];

// we support special element handlers. Register them with jQuery-style 

// ID selector for either ID or node name. («#iAmID», «div», «span» etc.)

// There is no support for any other type of selectors 

// (class, of compound) at this time.

specialElementHandlers = {

// element with id of «bypass» — jQuery style selector

‘#bypassme’: function(element, renderer) {

// true = «handled elsewhere, bypass text extraction»

return true

}

};

margins = {

top: 30,

bottom: 30,

left: 40,

right: 40,

width: 530

};

pdf.setProperties({

title: ‘Extended license for vector image’,

author: ‘BundleSpace(.com)’,

keywords: ‘generated, javascript, web 2.0, ajax’,

creator: ‘BundleSpace(.com)’

});

pdf.fromHTML(

source, // HTML string or DOM elem ref.

margins.left, // x coord

margins.top, {// y coord

‘width’: margins.width, // max width of content on PDF

‘elementHandlers’: specialElementHandlers

},

function(dispose) {

pdf.save(‘extended-license-for-vector-image.pdf’);

}

, margins);

}

</script>

<!—<button onclick=»javascript:demoFromHTML()»>Print license</button>—>


SeVlad
frontend2020 :
Код

игнорирование форумного форматирования кода резко снижает шансы получить помощь.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *