• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

PHP个人发卡网源码支持当面付/码支付/易支付+免签即时到账全解密

武飞扬头像
褚梦秋
帮助2

  PHP个人发卡网是您在线销售的任何没有物理形式或物质的产品。您可以将PHP个人发卡网变成实体产品。例如,许多人购买PDF 格式的电子书,然后在计算机上打印出来。该产品成为实体产品,但它以数字格式开始。PHP个人发卡网源码让销售PHP个人发卡网的企业家成为可能的盈利方式。
  
  源码演示:fakaysw.top
  
  部分源码:reg.js

  1.  
    //加载页头
  2.  
    $('body>header').load('header.html');
  3.  
    //**********************验证码模块**********************************
  4.  
    /* var c3=document.getElementById("c3");
  5.  
    var b=c3.getContext("2d");
  6.  
    //1创建矩形100*30 背景颜色随机;
  7.  
    b.fillStyle=rc(180,230);
  8.  
    b.fillRect(0,0,100,30);
  9.  
    //2创建随机字符串4绘制矩形中;
  10.  
    var pool = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz";
  11.  
     
  12.  
    function resetCode(){
  13.  
    var cs = new Array();
  14.  
    for(var i=0;i<4;i ){
  15.  
    var c=pool[rn(0,pool.length)];
  16.  
    b.textBaseline="top";
  17.  
    b.font=`${rn(15,30)}px SimHei`;
  18.  
    b.fillStyle=rc(30,180);
  19.  
    b.fillText(c,25*i,0);
  20.  
    cs[i]=c;
  21.  
     
  22.  
    }
  23.  
    return cs;
  24.  
    }
  25.  
    var yz=resetCode().join("").toUpperCase();
  26.  
    console.log(yz);
  27.  
    //3创建5条干扰线
  28.  
    function ganrao(){
  29.  
    for(var i=0;i<5;i ){
  30.  
    b.beginPath();
  31.  
    b.strokeStyle=rc(0,230);
  32.  
    b.moveTo(rn(0,120),rn(0,30));
  33.  
    b.lineTo(rn(0,120),rn(0,30));
  34.  
    b.stroke();
  35.  
    }
  36.  
    //4创建50个干扰点
  37.  
    for(var i=0;i<50;i ){
  38.  
    b.fillStyle=rc(0,255)
  39.  
    b.beginPath();
  40.  
    b.arc(rn(0,120),rn(0,30),1,0,2*Math.PI);
  41.  
    b.fill();
  42.  
    }
  43.  
    }
  44.  
    ganrao();
  45.  
    function rn(min,max){
  46.  
    var n=Math.random()*(max-min) min;
  47.  
    return Math.floor(n);
  48.  
    }
  49.  
    function rc(min,max){
  50.  
    var r=rn(min,max);
  51.  
    var g=rn(min,max);
  52.  
    var b=rn(min,max);
  53.  
    return `rgb(${r},${g},${b})`;
  54.  
    }
  55.  
    // 点击图片刷新
  56.  
    $("#c3").click(function() {
  57.  
    b.clearRect(0,0,100,30);
  58.  
    b.fillStyle=rc(180,230);
  59.  
    b.fillRect(0,0,100,30);
  60.  
    resetCode();
  61.  
    ganrao();
  62.  
    })
  63.  
    */
  64.  
    function yanzhengma(){
  65.  
    var num1=Math.floor(Math.random()*10);
  66.  
    var num2=Math.floor(Math.random()*10);
  67.  
    var i=Math.floor(Math.random()*3);
  68.  
    var fuhao=[" ","-","×"];
  69.  
    $("#yzm").html(`${num1} ${fuhao[i]} ${num2}= ?`)
  70.  
    if(fuhao[i]===' '){
  71.  
    num1 =num2;
  72.  
    }
  73.  
    if(fuhao[i]==='-'){
  74.  
    num1-=num2;
  75.  
    }
  76.  
    if(fuhao[i]==='×'){
  77.  
    num1*=num2;
  78.  
    }
  79.  
    return num1;
  80.  
    }
  81.  
    var yz=yanzhengma();
  82.  
    //**********************验证码模块结束**********************************
  83.  
     
  84.  
    //验证格式
  85.  
    var reg =new Vue({
  86.  
    el:".regP",
  87.  
    data:{
  88.  
    phone:"",upwd:"",upwds:"",email:"",yzm:"",
  89.  
    msg1:"请输入11位手机号码",msg2:"6-10位数字或字母组合",msg3:"确认密码",
  90.  
    msg4:"请输入邮箱",msg5:"",
  91.  
    spanClassPhone:{fail:false, success:false},
  92.  
    spanClassUpwd:{fail:false, success:false},
  93.  
    spanClassUpwds:{fail:false, success:false},
  94.  
    spanClassEmail:{fail:false, success:false},
  95.  
    yanzheng:{fail:false, success:false},
  96.  
    disabled:false,
  97.  
    agree:"checked"
  98.  
    },
  99.  
    watch:{
  100.  
    phone(){
  101.  
    if(this.phone==""){
  102.  
    this.msg1="请输入11位手机号码";
  103.  
    this.spanClassPhone.fail=false;
  104.  
    this.spanClassPhone.success=false;
  105.  
    }
  106.  
    else if(/^1\d{10}$/.test(this.phone)){
  107.  
    this.msg1="✔手机号可用";
  108.  
    //this.spanClass="success";
  109.  
    this.spanClassPhone.success=true;
  110.  
    this.spanClassPhone.fail=false;
  111.  
    }else{
  112.  
    this.msg1="ㄨ手机号码格式不正确!"
  113.  
    //this.spanClass="fail";
  114.  
    this.spanClassPhone.success=false;
  115.  
    this.spanClassPhone.fail=true;
  116.  
    }
  117.  
    },
  118.  
    upwd(){
  119.  
    if(this.upwd==""){
  120.  
    this.msg2="6-10位数字或字母组合";
  121.  
    this.spanClassUpwd.fail=false;
  122.  
    this.spanClassUpwd.success=false;
  123.  
    }
  124.  
    else if(/^\w{6,10}$/.test(this.upwd)){
  125.  
    this.msg2="✔格式正确!";
  126.  
    //this.spanClass="success";
  127.  
    this.spanClassUpwd.success=true;
  128.  
    this.spanClassUpwd.fail=false;
  129.  
    }else{
  130.  
    this.msg2="ㄨ密码格式不正确!"
  131.  
    this.spanClassUpwd.success=false;
  132.  
    this.spanClassUpwd.fail=true;
  133.  
    }
  134.  
    },
  135.  
    upwds(){
  136.  
    if(this.upwds==""){
  137.  
    this.msg3="确认密码";
  138.  
    this.spanClassUpwds.fail=false;
  139.  
    this.spanClassUpwds.success=false;
  140.  
    }else
  141.  
    if(this.upwds==this.upwd){
  142.  
    this.msg3="✔密码一致!"
  143.  
    this.spanClassUpwds.success=true;
  144.  
    this.spanClassUpwds.fail=false;
  145.  
    }else{
  146.  
    this.msg3="ㄨ两次输入密码不一致!"
  147.  
    this.spanClassUpwds.success=false;
  148.  
    this.spanClassUpwds.fail=true;
  149.  
    }
  150.  
    },
  151.  
    email(){
  152.  
    if(this.email==""){
  153.  
    this.msg4="请输入邮箱";
  154.  
    this.spanClassEmail.fail=false;
  155.  
    this.spanClassEmail.success=false;
  156.  
    }
  157.  
    else if(/^([0-9A-Za-z\-_\.] )@([0-9a-z] \.[a-z]{2,3}(\.[a-z]{2})?)$/g.test(this.email)){
  158.  
    this.msg4="✔邮箱格式正确";
  159.  
    //this.spanClass="success";
  160.  
    this.spanClassEmail.success=true;
  161.  
    this.spanClassEmail.fail=false;
  162.  
    }else{
  163.  
    this.msg4="ㄨ邮箱格式有误!"
  164.  
    //this.spanClass="fail";
  165.  
    this.spanClassEmail.success=false;
  166.  
    this.spanClassEmail.fail=true;
  167.  
    }
  168.  
    },
  169.  
    yzm(){
  170.  
    if(this.yzm==""){
  171.  
    this.msg5="";
  172.  
    }
  173.  
    else if(this.yzm.toUpperCase()==yz){
  174.  
    this.msg5="✔";
  175.  
    this.yanzheng.success=true;
  176.  
    this.yanzheng.fail=false;
  177.  
    }else{
  178.  
    this.msg5="ㄨ";
  179.  
    this.yanzheng.success=false;
  180.  
    this.yanzheng.fail=true;
  181.  
    }
  182.  
    }
  183.  
    }
  184.  
    })
  185.  
     
  186.  
    //点击注册时验证手机号是否已经注册过
  187.  
    $("#phone").blur(function(){
  188.  
    var phone=$("#phone").val();
  189.  
    $.ajax({
  190.  
    type:"post",
  191.  
    url: '/user/hasphone',
  192.  
    data: {phone:phone},
  193.  
    success:function(res){
  194.  
    if(res.code===201){
  195.  
    alert("您的手机号: " phone " 已注册,请直接登录!")
  196.  
    location.href="http://127.0.0.1:3333/login.html";
  197.  
    }else if(res.code===202){
  198.  
    // location.href="http://127.0.0.1:3333/index.html";
  199.  
    return;
  200.  
    }else
  201.  
    alertMsg('验证用户名出错!请稍后重试。')
  202.  
    }
  203.  
    });
  204.  
    })
  205.  
     
  206.  
    $("#submitBtn").on("click",function(){
  207.  
    var phone=$("#phone").val();
  208.  
    var upwd=$("#upwd").val();
  209.  
    var email=$("#email").val();
  210.  
    var upwds=$("#upwds").val();
  211.  
    var syzm=$("#syzm").val();
  212.  
    $.ajax({
  213.  
    type:"post",
  214.  
    url: '/user/reg',
  215.  
    data: {phone:phone,upwd:upwd,upwds:upwds,email:email,syzm:syzm,yz:yz},
  216.  
    success:function(res){
  217.  
    if(res.code===0){
  218.  
    alert("请填写用户名或密码!")
  219.  
    }else if(res.code===200){
  220.  
    //注册成功保存用户名,然后首页上加载出手机号
  221.  
    sessionStorage.setItem("phone",phone);
  222.  
    alert("注册成功,前往主页!")
  223.  
    location.href="http://127.0.0.1:3333/index.html";
  224.  
    }else if(res.code===209){
  225.  
    alert("两次输入密码不一致,请确认!")
  226.  
    }else if(res.code===208){
  227.  
    alert("验证码错误,点击刷新!")
  228.  
    location.href="http://127.0.0.1:3333/reg.html";
  229.  
    }else
  230.  
    alertMsg('验证出错!请重试。')
  231.  
    }
  232.  
     
  233.  
    });
  234.  
    });
学新通


  为什么PHP个人发卡网比实体产品更受欢迎?
  
  您可能想知道为什么要提供PHP个人发卡网而不是创建自己的实体产品。毕竟,实物产品在数十万年的时间里一直主导着商业。与实体产品相比,PHP个人发卡网具有许多优势,尤其是对于销售它们的企业家而言。
  
  库存永远不会成为问题(无论是盈余还是赤字);

  
  您不必找地方存放您的产品;

  
  在大多数情况下,客户可以在购买后立即收到产品;

  
  没有任何与材料或组装相关的成本。

  
  个人发卡网源码分步安装说明
  
  步骤1、制作付款后返回页面(例如,感谢或交易结果页面)。在电子商铺设置菜单的“返回URL”字段中使用此页面的URL。这是您的客户在付款后从支付平台返回时要登录的页面。确保您没有将此页面设置为私人页面(只有登录的人才能访问私人页面)。如果有人在未付款的情况下访问此页面(链接仅在付款后出现),则无所谓。
  
  步骤2、将您想要添加的任何消息添加到此“谢谢”页面,然后将以下短代码放在您想要显示交易结果的位置(产品下载链接):

 [wp_eStore_display_transaction_result]


  步骤3、在支付平台配置文件中启用PDT功能。如果您不知道如何启用PDT并获取PDT身份令牌,那么本文档应该会有所帮助(请查看该页面上的“激活PDT”部分)。
  
  步骤4、确保您也启用了“自动返回”选项。您可以从启用PDT的同一支付平台配置文件页面启用“自动退回”选项。
  
  步骤5、在电子商铺的支付平台支付网关设置菜单的“PDT身份令牌”字段中指定您从支付平台收到的PDT身份标志。
  
  步骤6、最后,通过选中电子商铺的设置(付款后流程设置)菜单中的“启用交易结果显示”,启用电子商铺中的“交易完成”页面显示功能。
  
  交易结果将显示客户也将在电子邮件中收到的消息。它将有一个他们订购的产品列表,每个PHP个人发卡网都有一个唯一的加密下载链接,因此可以立即下载。
  
  个人发卡网源码重要事项
  
  随着时间的推移,支付平台进行了更改,因此我们必须相应地调整插件(例如:当前您需要在支付平台帐户中启用自动重定向以实现此功能)。上面的文档是最新的,所以按照上面概述的步骤使用此功能。
  
  PHP个人发卡网与实体产品没有太大区别。你必须定义你的受众,用适合品牌的信息定位他们,并保持沟通渠道畅通。主要区别在于,解释对PHP个人发卡网的需求有时比说明实体产品的好处更难。
  
  解释对移动应用程序或在线课程的需求可能会带来更多挑战。这就是为什么知识商务专业人士必须专注于通过博客文章、网络研讨会、登录页面、满意的客户评论和其他营销资产来教育他们的受众。当然,您将必须首先创建您的PHP个人发卡网。我们整理了一份指南,向您展示如何创建和销售应该有所帮助的在线课程。
  
  小结
  
  当然,您可以自己建立一个网站,并创建提供在线课程、会员网站和其他PHP个人发卡网所需的后端。创建这样的设置需要数百小时的工作——前提是您具备执行此操作所需的技能。您还可以依靠像其他一体式业务平台,因为它使围绕PHP个人发卡网开展业务变得简单。
  
  您还可以选择在付款后返回页面上交付PHP个人发卡网,除此以外也会通过电子邮件交付产品。这使得客户能够在交易后立即通过加密链接下载数字商品。电子邮件也会立即发送,但有时需要几分钟(如果支付平台的服务器很忙,他们可能需要几分钟才能发送用于向客户发送电子邮件的付款通知)。

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhefbgig
系列文章
更多 icon
同类精品
更多 icon
继续加载