Exemple #1
0
 /**
  * 注册
  * @param $request
  * @return mixed
  */
 public function captcha(Request $request)
 {
     $cookieStr = $this->session->getSessionCookie();
     if (!$cookieStr) {
         PazxException::occur('SESSION_ERROR');
     }
     $adapterData = [CURLOPT_REFERER => $this->regInit];
     list($t1, $t2) = explode(' ', microtime());
     $time = (double) sprintf('%.0f', (floatval($t1) + floatval($t2)) * 1000);
     $requestUrl = $this->captchaUrl . '?a=' . $time;
     $response = $this->doRequest($requestUrl, $adapterData);
     $content = $response->getContent();
     //$cookieStr = $this->session->getSessionCookie();
     return $content;
 }
 /**
  * 验证码
  */
 public function captcha2(Request $request)
 {
     if (!($clientToken = $request->get('ctoken'))) {
         PazxException::occur('SESSION_INVALID');
     }
     $bllPbccrc = new Pbccrc($clientToken);
     $response = $bllPbccrc->captcha($request);
     return response($response, 200)->header('Content-Type', 'image/jpeg');
 }
    /**
     * 注册第二步表单
     * @param Request $request
     *
     * @return string
     */
    public function regStep2Form(Request $request)
    {
        if (!($clientToken = $request->get('ctoken'))) {
            PazxException::occur('SESSION_INVALID');
        }
        $formToken = $request->get('ftoken');
        $regUrl = Url::getCrmUrl('/system/pazx/pbccrc/reg2');
        $getVerifyCodeUrl = Url::getCrmUrl('/system/pazx/pbccrc/regVerifyCode', ['ctoken' => $clientToken]);
        return <<<FORMNHTML
<html>
<head>
<script>

function ajaxFunction( url )
   {
    var xmlHttp;
    try
    {
  // Firefox, Opera 8.0+, Safari
  xmlHttp = new XMLHttpRequest();    // 实例化对象
    }
    catch( e )
    {
     // Internet Explorer
     try
     {
      xmlHttp = new ActiveXObject( "Msxml2.XMLHTTP" );
     }
     catch ( e )
     {
      try
      {
       xmlHttp = new ActiveXObject( "Microsoft.XMLHTTP" );
      }
      catch( e )
      {
       alert("您的浏览器不支持AJAX!");
       return false;
      }
     }
    }
    xmlHttp.onreadystatechange = function()
    {
     if( xmlHttp.readyState == 4  && xmlHttp.status == 200 )
     {
     text=xmlHttp.responseText
     if('' != text)
     {
      document.getElementById('tcId').value =  xmlHttp.responseText;
      alert('发送成功' + xmlHttp.responseText);
      }
      else
      {
        alert('发送失败')
      }
     }
    }
    xmlHttp.open( "GET", url, true );
    xmlHttp.send( null );
   }

   function getVerifyCode()
   {
    var value = document.getElementById('mobileTel').value;
    if( '' != value )
    {
     url ='{$getVerifyCodeUrl}&mobileTel='+value;
     ajaxFunction( url );    // 注意在后缀.php之后加传值是先用?分隔再添加数据
    }
   }
</script>
</head>
<body>
<form action="{$regUrl}" method="post" target="_blank">
<input type="hidden" name="tcId" id="tcId" value="">
<input type="hidden" name="ftoken" value="{$formToken}">
<input type="hidden" name="ctoken" value="{$clientToken}">
    登录名 <input type="text" maxlength="16" name="userInfoVO.loginName" id="loginName" autocomplete="on" />
    <br /><br />
    密码 <input type="text" maxlength="20" name="userInfoVO.password" id="password"  autocomplete="on" />
    <br /><br />
    手机号码 <input type="text" maxlength="20" name="userInfoVO.mobileTel" id="mobileTel" autocomplete="on" />
    <br /><br />
    动态码 <input maxlength="6" type="text" id="_@IMGRC@_" name="userInfoVO.verifyCode" autocomplete="off">
    <input type="button" value="获取动态码" onclick="getVerifyCode();">
    <br /><br />
    <br /><br />
    <input type="submit" />
</form>

</body>
</html>
FORMNHTML;
    }