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

F2
На сайте с 28.08.2020
Offline
7
128
Есть вопрос по интеграции 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\"\r\n";

$headers .= "From: ". $fromName ." <". $fromMail ."> \r\n";

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

$body = "Order the extended license №$unique\n\nChosen image: $image\n\nView in base: https://docs.google.com/...\n\nFull name: $fullname \n\nCompany: $organization\n\nLocation: $location\n\n PayPal: $paypal\n\n";

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="/upload/tmp/license-header.png" border="0" width="530px" height="85px" align="center"></p>

<br><br>

<p align="center"><br><img src="/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="/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
На сайте с 03.11.2008
Offline
1609
#1
frontend2020 :
Код
игнорирование форумного форматирования кода резко снижает шансы получить помощь.
Делаю хорошие сайты хорошим людям. Предпочтение коммерческим направлениям. Связь со мной через http://wp.me/P3YHjQ-3.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий