Heim > Backend-Entwicklung > PHP-Tutorial > PHP-Entwicklungsframework Yii Framework-Tutorial (21) UI-Komponente Captcha-Beispiel

PHP-Entwicklungsframework Yii Framework-Tutorial (21) UI-Komponente Captcha-Beispiel

黄舟
Freigeben: 2023-03-05 08:56:02
Original
1638 Leute haben es durchsucht

Das integrierte Captcha von Yii kann grundsätzlich die meisten Anforderungen an Bestätigungscodes erfüllen. Dies wird hauptsächlich durch die Erweiterung von CCaptchaAction erreicht das zufällig Addition und Subtraktion innerhalb von 10 generiert. Benutzer

müssen das richtige Ergebnis berechnen, um die Überprüfung zu bestehen.

Dieses Beispiel basiert auf dem Captcha-Beispiel der UI-Komponente im obigen Yii Framework Development Tutorial (20) mit den folgenden Änderungen


Erstellen Sie zunächst eine MathCaptchaAction im Verzeichnis protected/components und überladen Sie genericVerifyCode,

renderImage und andere Methoden:

Dann ändern Sie die Regeln von SiteController und verwenden Sie die neu erstellte MathCaptchaAction
class MathCaptchaAction
extends CCaptchaAction{
protected function generateVerifyCode(){return mt_rand((int)$this->minLength,(int)$this->maxLength);}
public function renderImage($code){parent::renderImage($this->getText($code));}
protected function getText($code){$code=(int)$code;$rand=mt_rand(1,$code-1);$op=mt_rand(0,1);if($op){
return $code-$rand. '+' . $rand;
}else{return $code+$rand. '-' . $rand;}}}
Nach dem Login kopieren

public function actions()
{
return array(
'captcha'=>array(
'class' => 'MathCaptchaAction',
'minLength' => 1,
'maxLength' => 10,
)
Nach dem Login kopieren

PHP-Entwicklungsframework Yii Framework-Tutorial (21) UI-Komponente Captcha-Beispiel Die Oben finden Sie das PHP-Entwicklungsframework Yii Framework-Tutorial (21). Der Inhalt der UI-Komponente Captcha-Beispiel. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn).

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage