CINXE.COM
Checkout | Packt
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="description" content="Check out securely with Packt"> <link rel="canonical" href="https://www.packtpub.com/checkout/subscription/packt-subscription-18-months-special-offer"/> <title>Checkout | Packt</title> <link rel="preconnect" href="https://fonts.googleapis.com"> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <link href='https://fonts.googleapis.com/css?family=Montserrat&display=swap'> <link href='https://fonts.googleapis.com/css2?family=Roboto+Mono:wght@500&display=swap'> <link rel='preconnect' href='https://fonts.cdnfonts.com'> <link rel="preconnect" href="https://www.googletagmanager.com"> <link rel="icon" href="/favicon.ico" sizes="48x48" > <link rel="icon" href="/favicon.svg" sizes="any" type="image/svg+xml"> <link rel="apple-touch-icon" href="/apple-touch-icon.png"/> <!-- CSRF Token --> <meta name="csrf-token" content="TT8FlBeeXxzJqLcmI9cMd7iS8zUqBLuEIcVjHo6s"> <script async src="https://91519dce225c6867.packtpub.com/gtag/js?id=G-Q4R8G7SJDK"></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', "G-Q4R8G7SJDK", { 'server_container_url': 'https://91519dce225c6867.packtpub.com', }); </script> <link rel="preload" href="https://www.google.com/recaptcha/api.js" as="script"> <link rel="preload" href="/js/app.js?id=cdd9be47e68ec76bc848c7a1e49e2ff8" as="script"> <link rel="preload" href="/js/checkout.js?id=14902585e77cfd21788157e1737b5bec" as="script"> <link rel="preload stylesheet" href="/css/bootstrap.css?id=70e7116f1caef46a1351d003fe2688c2" as="style"> <link rel="preload stylesheet" href="/css/app.css?id=0e02cd0d1327bbdffb0992986f722b15" as="style"> <script src="/js/app.js?id=cdd9be47e68ec76bc848c7a1e49e2ff8"></script> </head> <body class="checkout"> <noscript> <iframe src="https://91519dce225c6867.packtpub.com/ns.html?id=GTM-N8ZG435Z" height="0" width="0" style="display:none;visibility:hidden"></iframe> </noscript> <!-- End Google Tag Manager (noscript) --> <nav id="primary-navigation" class="navigation"> <div class="container-fluid navigation__inner"> <div class="navigation__left"> <a href="https://subscription.packtpub.com/" id="main-logo" title="Home"> <img class="logo" src="/images/logo-new.svg" alt="Packt Logo" /> </a> </div> </div> </nav> <div class="container checkout"> <h1>Advance your knowledge today with access to the Packt library<br> <br><span style=font-size:14px> <img src="https://www.packtpub.com/images/chevron--right-orange.svg" style="max width:9px;"> Access to 7,500+ eBooks and Videos <br /><img src="https://www.packtpub.com/images/chevron--right-orange.svg" style="margin-left:20px;max-width:9px;"> Mobile app for learning anywhere <img src="https://www.packtpub.com/images/chevron--right-orange.svg" style="margin-left:20px;max-width:9px;"> Over 100 new eBooks and Videos a month </br> <br /></span></h1> <div class="row"> <div class="col-8 checkout-stepper-block-A"> <div class="steps step1"> <h5><i class="fa fa-check hidden"></i><span class="no-success">1</span> Account details</h5> <div class="text-right" id="accDetails"> <a href="https://subscription.packtpub.com/my-account" target="_blank"></a> </div> <div class="body"> <div class="text-right small-text" id="signInHere"> Already have an account? <a href="https://www.packtpub.com/login?returnUrl=https://www.packtpub.com/checkout/subscription/packt-subscription-18-months-special-offer">Sign in here</a> </div> <form id="formStep1" method="post" onsubmit="return checkout.recaptchaExecute();" data-form="true" data-form="true"> <div class="row"> <div class="col-md-6"> <div class="form-group"> <label for="username">Email address *</label> <input type="email" class="form-control" id="username" name="username" data-module placeholder="Email address" autocomplete="email" required> </div> </div> <div class="col-md-6"> <div class="form-group position-relative"> <label for="password">Password *</label> <input type="password" class="form-control password" name="password" id="password" placeholder="Password" oninput="checkout.validatePassword()" onfocusout="checkout.onFocusOutPassword()" required> <a id="showPassword" class="show-password" onclick="checkout.showPassword(); return false;">Show</a> <a id="hidePassword" class="show-password" onclick="checkout.hidePassword(); return false;" style="display: none;">Hide</a> <div id="vp_popup" class="validation-popup hidden"> Passwords must meet the following requirements: <ul class="list-unstyled"> <li id="vp_lowercaseLetter"> <i class="fa fa-times text-danger mr5"> </i> At least one lowercase letter </li> <li id="vp_uppercaseLetter"> <i class="fa fa-times text-danger mr5"> </i> At least one uppercase letter </li> <li id="vp_oneNumber"> <i class="fa fa-times text-danger mr5"> </i> At least one number </li> <li id="vp_8characters"> <i class="fa fa-times text-danger mr5"> </i> Be at least 8 characters </li> </ul> </div> </div> </div> </div> <div class="row"> <div class="col-md-6"> <div class="form-group"> <label for="firstName">First name *</label> <input type="text" class="form-control" id="firstName" name="firstName" placeholder="First name" data-module="name" autocomplete="given-name" required> </div> </div> <div class="col-md-6"> <div class="form-group"> <label for="lastName">Last name *</label> <input type="text" class="form-control" id="lastName" name="lastName" placeholder="Last name" data-module="name" autocomplete="family-name" required> </div> </div> </div> <div class="d-flex justify-content-end align-items-center"> <small class="form-text text-muted mr-auto mw-34"> By creating an account, you agree to the <a target='_blank' href='https://www.packt.com/terms-conditions/'>Terms And Conditions</a> set out by this site, including our <a target='_blank' href='https://www.packt.com/privacy-policy/cookie-policy/'>Cookie Use</a> </small> <button class="btn btn-primary long">Continue</button> </div> </form> </div> </div> <div class="steps step2"> <h5><i class="fa fa-check hidden"></i><span class="no-success">2</span> Billing details <a id="editLink2" class="edit-link hidden" onclick="checkout.editForm2()">Edit</a> </h5> <div class="body"> <div class="block-address-line hidden"> <form id="formStep2google" method="post" onsubmit="return false;" data-form="true"> <div class="row"> <div class="col-12"> <div class="form-group"> <label for="addressLine">Billing address *</label> <input type="text" class="form-control" id="addressLine" name="addressLine" placeholder="Start typing a postcode or an address" data-module required> </div> <div class="text-right"> <a href="#" onclick="return checkout.addressManually()">Enter address manually</a> </div> </div> </div> </form> </div> <div class="block-address-manually"> <form id="formStep2" method="post" onsubmit="return false;" data-form="true"> <div class="row"> <div class="col-md-6"> <div class="form-group"> <label for="addressLine1">Address Line 1 *</label> <input type="text" class="form-control" name="line1" data-module id="addressLine1" autocomplete="address-line1" required> </div> </div> <div class="col-md-6"> <div class="form-group"> <label for="addressLine2">Address Line 2</label> <input type="text" class="form-control" name="line2" data-module id="addressLine2" autocomplete="address-line2"> </div> </div> </div> <div class="row"> <div class="col-md-6"> <div class="form-group"> <label for="city">City *</label> <input type="text" class="form-control" name="locality" data-module="name" id="city" autocomplete="address-level2" required> </div> </div> <div class="col-md-6"> <div class="form-group"> <label for="state">State *</label> <select class="form-control select2" name="state" id="state" style="margin: 2rem 0 0 2rem" autocomplete="address-level1"> </select> <input type="text" class="form-control" name="state_input" id="state_input"> </div> </div> </div> <div class="row"> <div class="col-md-6"> <div class="form-group"> <label for="country">Country *</label> <select class="form-control select2" name="country" id="country" autocomplete="country-name"> </select> </div> </div> <div class="col-md-6"> <div class="form-group"> <label for="postcode">Zip/Postal code *</label> <input type="text" class="form-control" name="postal_code" data-module id="postcode" autocomplete="postal-code" required> </div> </div> </div> <div class="text-right"> <button class="btn btn-primary long" onclick="checkout.runStep2()">Continue</button> </div> </form> </div> </div> </div> <div class="steps step3"> <h5><span class="no-success">3</span> Payment <div class="spinner-border hidden" role="status"> <span class="sr-only">Loading...</span> </div> </h5> <div class="body hidden"> <div id="paymentText" class="payment-text-block"></div> <div class="custom-control custom-radio d-flex justify-content-between"> <div class="text-left"> <input type="radio" id="creditCard" name="paymentType" class="custom-control-input" value="credit" onclick="checkout.paymentClick(this)" checked > <label class="custom-control-label" for="creditCard">Debit or Credit Card</label> </div> <div class="text-right"> <i class="fa fa-cc-mastercard fa-big mr-3"></i><i class="fa fa-cc-visa fa-big"></i> </div> </div> <div id="zuora_payment"></div> <div id="disclaimerText" class="disclaimer-text-block"></div> <div id="payPalPaymentOption" class="hidden"> <hr> <div class="custom-control custom-radio"> <input type="radio" id="paypal" name="paymentType" class="custom-control-input" value="paypal" onclick="checkout.paymentClick(this)"> <label class="custom-control-label" for="paypal">Paypal</label> </div> </div> </div> </div> </div> <div class="col-4 checkout-stepper-block-B pl-0"> <div class="steps step4" onclick="checkout.orderSummary(false)"> <h5>Order summary</h5> <div class="body d-block"> <div class="row d-flex justify-content-between"> <div class="col-9 pr-0"> <span class="content-head">Plan</span><br> <span>18 Months Packt subscription</span> </div> <div class="col-3 text-right"> <span class="content-head">Price</span><br> <span class="order-summary-price">$279.99</span> </div> </div> <hr class="col-11"> <div class="row d-flex justify-content-between content-head"> <span class="col-8">Total due today</span> <span class="col-4 text-right order-summary-price">$279.99</span> </div> <div class="row plan-description p-4" id="order-summary-paymentText"> $279.99 due today. One off payment of $279.99. </div> </div> </div> </div> <div id="loader" class="hidden"> <div class="spinner-border" role="status"></div> </div> </div> </div> <div id="recaptcha-container"></div> <!-- The Modal --> <div class="fade playlist-modal packt-blade-modal modal" id="freeTrialModal"> <div class="modal-dialog"> <div class="modal-content"> <!-- Modal Header --> <div class="modal-header"> <h4 class="modal-title">Offer </h4> <button type="button" class="close" data-dismiss="modal">×</button> </div> <!-- Modal body --> <div class="modal-body"> Unfortunately free trials are currently unavailable in your region. We apologise for the inconvenience and would like to offer you a discounted plan where the first <a href='/checkout/subscription/monthly-packt-subscription-ro23'>3 months are ₹500 per month here.</a> </div> <!-- Modal footer --> <div class="modal-footer"> <a href="/checkout/subscription/monthly-packt-subscription-ro23 " class="btn-confirm btn btn-primary"> Accept Offer </a> </div> </div> </div> </div> <!--MODAL PAYMENT HANDLER POPUP --> <div class="fade playlist-modal packt-blade-modal modal" id="paymentHandlerModal"> <div class="modal-dialog"> <div class="modal-content"> <!-- Modal Header --> <div class="modal-header"> <h4 class="modal-title"></h4> <button type="button" class="close" data-dismiss="modal">×</button> </div> <!-- Modal body --> <div class="modal-body"> </div> <!-- Modal footer --> <div class="modal-footer"> <a href="" target="_blank" class="btn-confirm btn btn-primary"> </a> </div> </div> </div> </div> <script> function getJavascriptEnv(key) { const envs = {"ADD_TO_CART_FEATURE_ENABLE":true,"FRONTEND_CACHE_EMBARGO_TIME":"2024-05-06T08:03:12Z","COOKIE_CONSENT_FEATURE_ENABLE":true,"NEW_COOKIE_CONSENT_FEATURE_ENABLE":false,"DOLLAR_5":{"DISCOUNT_BANNER":true,"START_DATE":"2024-02-26T00:00:00Z","END_DATE":"2024-02-29T23:59:59Z","TIMER_START_HOURS":72},"NEW_HOME_PAGE":{"SUBS_USER":["header-section","our-partners","features-section","first-freetrial","expert-reading-lists","testimonial-section","popular-products","faqs-section"],"NON_SUBS_USER":["offer-discount-section","header-section","our-partners","topic-headers","features-section","first-freetrial","expert-reading-lists","testimonial-section","popular-products","pricing-section","faqs-section"]},"LOGO_LINK":{"SUBS_USER":false,"NON_SUBS_USER":"https:\/\/www.packtpub.com\/"},"NEW_CHECKOUT":{"EXPRESS_ELEMENT_ENABLE":false},"MINI_LIBRARY":{"deafult":"product_type:\u0027Video\u0027 OR product_type:\u0027Book\u0027 OR product_type:\u0027Book + AI Assistant\u0027 OR product_type:\u0027Project\u0027 OR product_type:\u0027Audiobook\u0027 OR product_type:\u0027exam trainer\u0027 OR product_type:\u0027Learning Path\u0027 OR product_type:\u0027Expert Reading Lists\u0027","minilibrary":"product_type:\u0027Video\u0027 OR product_type:\u0027Book\u0027 OR product_type:\u0027Project\u0027 OR product_type:\u0027exam trainer\u0027 OR product_type:\u0027Learning Path\u0027 OR product_type:\u0027Expert Reading Lists\u0027"},"isAlgoliaDiscountCronRunning":false}; return envs[key] || false; } </script> <script src="/js/consent-popup.js?id=6dac63694e8972c97a0254416caf16e3"></script> <script src="/js/checkout.js?id=14902585e77cfd21788157e1737b5bec"></script> <script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyAlq0L1y9OYxZWyAiIFbxl-XPZbA0zl5Cc&libraries=places"></script> <script src="https://static.zuora.com/Resources/libs/hosted/1.3.1/zuora-min.js"></script> <script src="https://www.google.com/recaptcha/api.js?onload=checkoutRecaptchaRenderCallback&render=explicit" async defer></script> <script>(function(n,t,i,r){var u,f;n[i]=n[i]||{},n[i].initial={accountCode:"PACKT11111-1115935",host:"PACKT11111-1115935.pcapredict.com"},n[i].on=n[i].on||function(){(n[i].onq=n[i].onq||[]).push(arguments)},u=t.createElement("script"),u.async=!0,u.src=r,f=t.getElementsByTagName("script")[0],f.parentNode.insertBefore(u,f)})(window,document,"pca","//PACKT11111-1115935.pcapredict.com/js/sensor.js")</script> <script type="text/javascript"> let countriesExcluded = ["Afghanistan","AF","Belarus","BY","Burundi","BI","Central African Republic","CF","Congo, the Democratic Republic of the","CD","Eritrea","ER","Guinea","GN","Guinea-bissau","GW","Iran","IR","Iraq","IQ","Lebanon","LB","Libyan Arab Jamahiriya","LY","North Korea","KP","Somalia","SO","Sudan","SD","Syrian Arab Republic","SY","Venezuela","VE","Yemen","YE","Cambodia","KH","Lao People's Democratic Republic","LA","Myanmar","MM","Cuba","CU"]; let checkout = new window.Checkout(1, "", "https://www.packtpub.com/api/subscriptions/countries", countriesExcluded, "Subscriber", "", ""); checkout.setGoogleAutocomplete(); var recaptchaPublicKey = "6LeAHSgUAAAAAKsn5jo6RUSTLVxGNYyuvUcLMe0_"; function checkoutRecaptchaRenderCallback() { return checkout.checkoutRecaptchaRenderCallback() } </script> </body> </html>