Google Yii1.1.6 上的 reCAPTCHA v2 未显示
Google reCAPTCHA v2 on Yii1.1.6 not shown
我正尝试在我使用 Yii 1.1.6 的项目上制作 google reCaptcha。
而且我已经遵循了此文档 https://github.com/dakiquang/yiiReCaptcha。但是我的 google reCaptcha 没有显示。
有人可以帮忙吗?
这是我的 loginForm.php
个模型
class LoginForm extends CFormModel
{
public $username;
public $password;
public $rememberMe;
public $verifyCode;
private $_identity;
/**
* Declares the validation rules.
* The rules state that username and password are required,
* and password needs to be authenticated.
*/
public function rules()
{
return array(
// username and password are required
array('username, password', 'required'),
// rememberMe needs to be a boolean
array('rememberMe', 'boolean'),
// password needs to be authenticated
array('password', 'authenticate'),
array('verifyCode', 'required'),
array('verifyCode', 'ext.yiiReCaptcha.ReCaptchaValidator'),
);
}
/**
* Declares attribute labels.
*/
public function attributeLabels()
{
return array(
'username' => 'Email',
'password' => 'Password',
'verifyCode' => 'Verification Code',
'rememberMe' => 'Remember me',
);
}
}
这是我的登录视图
login.php
<div class="form-group has-feedback">
<?php
$this->widget('ext.yiiReCaptcha.ReCaptcha', array(
'model' => $model,
'attribute' => 'verifyCode',
));
?>
</div>
另外我已经在 protected/config
上更改了 main.php
'components' => array(
'reCaptcha' => array(
'name' => 'reCaptcha',
'class' => 'ext.yiiReCaptcha.ReCaptcha',
'key' => 'my-key-in-here',
'secret' => 'my-key-in-here',
),
)
拜托,有人可以解决这个问题吗?
之前谢谢你。
最后,我用一个笨办法解决了这个问题。
所以我添加这段代码
<script src="https://www.google.com/recaptcha/api.js" async defer></script>
在表格上方。
并使用此代码
<div class="g-recaptcha" data-sitekey="6LddDZgbAAAAAArLBzXYH0RQ7MMExsp4fbmNVhNf"></div>
呈现验证码。
成功了!
我正尝试在我使用 Yii 1.1.6 的项目上制作 google reCaptcha。
而且我已经遵循了此文档 https://github.com/dakiquang/yiiReCaptcha。但是我的 google reCaptcha 没有显示。
有人可以帮忙吗?
这是我的 loginForm.php
个模型
class LoginForm extends CFormModel
{
public $username;
public $password;
public $rememberMe;
public $verifyCode;
private $_identity;
/**
* Declares the validation rules.
* The rules state that username and password are required,
* and password needs to be authenticated.
*/
public function rules()
{
return array(
// username and password are required
array('username, password', 'required'),
// rememberMe needs to be a boolean
array('rememberMe', 'boolean'),
// password needs to be authenticated
array('password', 'authenticate'),
array('verifyCode', 'required'),
array('verifyCode', 'ext.yiiReCaptcha.ReCaptchaValidator'),
);
}
/**
* Declares attribute labels.
*/
public function attributeLabels()
{
return array(
'username' => 'Email',
'password' => 'Password',
'verifyCode' => 'Verification Code',
'rememberMe' => 'Remember me',
);
}
}
这是我的登录视图
login.php
<div class="form-group has-feedback">
<?php
$this->widget('ext.yiiReCaptcha.ReCaptcha', array(
'model' => $model,
'attribute' => 'verifyCode',
));
?>
</div>
另外我已经在 protected/config
main.php
'components' => array(
'reCaptcha' => array(
'name' => 'reCaptcha',
'class' => 'ext.yiiReCaptcha.ReCaptcha',
'key' => 'my-key-in-here',
'secret' => 'my-key-in-here',
),
)
拜托,有人可以解决这个问题吗? 之前谢谢你。
最后,我用一个笨办法解决了这个问题。
所以我添加这段代码
<script src="https://www.google.com/recaptcha/api.js" async defer></script>
在表格上方。
并使用此代码
<div class="g-recaptcha" data-sitekey="6LddDZgbAAAAAArLBzXYH0RQ7MMExsp4fbmNVhNf"></div>
呈现验证码。
成功了!