前端表单通过接口添加数据到金数据

/ 0评 / 1

金数据表单php接口请求需要两个主要接口 (其中APIKEY,APISECRET从个人中心获取),接口都是基于HTTP BASIC验证,实例下会给大家说明在哪里获得主要的俩个接口,现根据自己的开发经历分享下php语言请求金数据接口方法实例。

需要到的网址:

https://jinshuju.net/profile/api (获取APIKEY,APISECRET)
https://help.jinshuju.net/articles/api-auth.html (金数据接口文档)

php开发实例(api.php核心代码可二开):

此处为核心代码,企业表单也可在此代码上修改实现,原理同下,注释也已写好

<?php
class JinshujuEntryApi

{

    protected $appKey;     //API Key
    protected $appSecre;    //API Secret
    protected $urlApi;     //这是金数据v1版本的api地址

    public function __construct($appKey,$appSecre)
    {

        $this->appKey=$appKey;
        $this->appSecre=$appSecre;
        //$this->urlApi="https://xxx.jinshuju.com/api/v1/forms/";企业版本,xxx表示企业版的特有域名 根据自己需求选择
        $this->urlApi="https://jinshuju.net/api/v1/forms/";//个人版本

    }

    /**
     * 向接口发送数据
     * @param $formName       这个是表单的ID,比如个人版的地址是:https://jinshuju.net/f/xxxxxxx,这个就是指的xxxxxxx部分,不需要'/'
     * @param $sendDataArray    这是传入的参数,数组格式比如:['field_1'=>"姓名",'field_2'=>"电话"];
     * @return mixed
     */
    public function SendJinshuju($formName,$sendDataArray){

        $stringData=http_build_query($sendDataArray);
        $url=$this->urlApi.$formName.'?'.$stringData;

        $headers=['accept:Application/json','Content-type'=>'application/json'];

        $result=$this->https_request($url,$headers);

        return $result;
    }

    /**
     * curl 发送函数
     * @param $url
     * @param $headers
     * @param $data         只要不为null和空就行,随便填什么都可以,不然不会成功
     * @return mixed
     */
    private function https_request($url, $headers,$data="demo")
    {
        $curl = curl_init();
        curl_setopt($curl, CURLOPT_URL, $url);
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
        curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
        curl_setopt($curl, CURLOPT_USERPWD, "{$this->appKey}:{$this->appSecre}");

        if (!empty($data)){
            curl_setopt($curl, CURLOPT_POST, 1);
            curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
        }

        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
        $output = curl_exec($curl);
        curl_close($curl);
        return $output;
    }
}

//调用

$name = $_POST["name"];


$tel = $_POST["tel"];


$JinShuJuObj=new JinshujuEntryApi("EVcs_SUniPC-xxxxxxxxxx","cqBri7VEdjXWuxxxxxxx");

$array=['field_1'=>$name,'field_2'=>$tel];


////假如这是你表单的地址:https://jinshuju.net/f/drHABe,那么$formName="drHABe";

$formName="drHABe";

//
$result = $JinShuJuObj->SendJinshuju($formName,$array);

//

//var_dump($result);

注意事项提示:

需要修改$JinShuJuObj,$drHABe,$array

$array需根据需求改修,默认为field_1(姓名),field_2(电话),详细的到自己的金数据表单查看源代码

接口布置好以后,我们配置前端,需要到的就是前端代码、样式,在这里我们就不写样式了,自己动手写写!

网站前端代码(不涵盖样式表):

<form id="formId" action="api.php" method="post" onSubmit="return validate();">	
<div class="form_main">
<h3>填写联系方式获取报价</h3>
<dl class="input_dl">
<dt>您的姓名</dt>
<dd><input class="input_1" placeholder="此处填写姓名" id="name" name="name" type="text" /></dd>
</dl>
<dl class="input_dl">
<dt>您的电话</dt>
<dd><input class="input_1" placeholder="此处填写联系方式" id="tel" name="tel" type="text" /></dd>
</dl>
<div class="tab_sub">
<input type="submit" name="commit" id="dosubmit" value="立即提交"/>
</div>
</div>
</form>

到此也就完结了,此代码完全可以二开,有能力可自行添加金数据表单内的短信验证码功能!

发表评论

电子邮件地址不会被公开。 必填项已用*标注