Heim  >  Artikel  >  PHP-Framework  >  Besprechen Sie die Implementierung des Thinkphp-Verifizierungscodes

Besprechen Sie die Implementierung des Thinkphp-Verifizierungscodes

PHPz
PHPzOriginal
2023-04-17 10:29:44670Durchsuche

Mit der Entwicklung der Internettechnologie wird der Einsatz von Verifizierungscodes immer weiter verbreitet. Er kann böswillige Registrierungen, Kommentare, Crawler und andere Verhaltensweisen von Robotern wirksam verhindern und so die Sicherheit und den normalen Betrieb der Website gewährleisten Um die Verifizierungscode-Funktion besser zu implementieren, besprechen wir nun die Implementierung des Thinkphp-Verifizierungscodes.

1. Das Konzept und die Funktion des Verifizierungscodes

Verifizierungscode (vollständiger englischer Name: Completely Automated Public Turing test to tell Computers and Humans Apart) ist eine Methode, die automatisch unterscheidet zwischen Computerprogrammen und öffentlichem, vollautomatischem Reverse-Turing-Test für menschliche Benutzer, einer Technologie zur Unterscheidung, ob der Benutzer eine Maschine oder ein Mensch ist. Verifizierungscodes werden häufig verwendet, unter anderem für Registrierung, Anmeldung, Kommentare, Suche, Abstimmung, Crawler und andere Szenarien, und spielen eine entscheidende Rolle für die Sicherheit des Internets.

2. Implementierungsschritte des Thinkphp-Bestätigungscodes

  1. Thinkcaptcha installieren

Zunächst müssen wir installieren it in thinkphp Das Thinkcaptcha-Erweiterungspaket kann über den folgenden Befehl installiert werden: Composer require topthink/think-captcha

  1. Konfigurieren Sie die Datei config.php
#🎜 🎜# im Anwendungsordner Suchen Sie als Nächstes die Datei config.php. Nach dem Öffnen sehen Sie den folgenden Code:

//验证码
'captcha' => [
    // 验证码字符集合
    'codeSet' => '2345678abcdefhijkmnpqrstuvwxyzABCDEFGHJKLMNPQRTUVWXY',
    // 验证码字体大小(px),根据所需进行设置验证码字体大小
    'fontSize' => 25,
    // 是否画混淆曲线
    'useCurve' => true,
    // 验证码图片高度,根据所需进行设置验证码图片高度
    'imageH' => 50,
    // 验证码图片宽度,根据所需进行设置验证码图片宽度
    'imageW' => 150,
    // 验证码位数,根据所需进行设置验证码位数
    'length' => 4,
    // 验证成功后是否重置
    'reset' => true
]
Je nach Bedarf können wir die darin enthaltenen Parameter für personalisierte Einstellungen ändern.

    Rufen Sie die Bestätigungscode-Methode im Controller auf
  1. use think\captcha\Captcha;
    
    class Index
    {
       public function verify()
       {
          $config = [
             'codeSet' => '0123456789',
             'useZh'   => false,
             'fontSize'=> 20, 
             'length' => 4,
             'useNoise' => false,
          ]; //验证码配置
          $captcha = new Captcha($config);
          return $captcha->entry(); 
       }
    }
Im obigen Inhalt wird $config verwendet, um Bestätigungscode-Parameter festzulegen, z CodeSet ist ein optionaler Zeichensatz. UseZh gibt an, ob Chinesisch aktiviert werden soll. FontSize ist die Schriftgröße des Bestätigungscodes. Länge ist die Anzahl der Stellen des Bestätigungscodes. UseNoise gibt an, ob Interferenzlinien usw. aktiviert werden sollen.

    wird in der Ansicht Verifizierungscode aufgerufen
In dem Formular, das den Verifizierungscode erfordert, können Sie den Verifizierungscode über den folgenden Code aufrufen: #🎜🎜 #
<form method="post">
   <input type="text" name="captcha" placeholder="Captcha" class="form-control">
   <?php echo captcha_img(); ?>
</form>

Die Methode captcha_img() ist das Thinkcaptcha-Erweiterungspaket. Mit der integrierten Methode zur Ausgabe des Bestätigungscodes kann der generierte Bestätigungscode direkt ausgegeben werden.

Verifizierungscode verifizieren
  1. Abschließend muss der Verifizierungscode im Backend verifiziert werden, wenn der vom Benutzer eingegebene Verifizierungscode und der Verifizierungscode generiert. Wenn sie inkonsistent sind, schlägt die Verifizierung fehl.
use think\captcha\Captcha;

class Index
{
   public function login()
   {
      $captcha = new Captcha();
      if (!$captcha->check(input('code'))) {
         $this->error('验证码错误');
      } else {
         //其他业务逻辑
      }
   }
}

Im obigen Code wird $captcha->check(input('code')) verwendet, um zu erkennen, ob der vom Benutzer eingegebene Bestätigungscode mit dem generierten Bestätigungscode übereinstimmt inkonsistent ist, wird eine Eingabeaufforderung angezeigt.

3. Zusammenfassung

Da der Bestätigungscode ein wichtiger Teil zur Gewährleistung der Sicherheit der Website ist, bietet thinkphp auch eine umfangreiche Bestätigungscode-Funktion, die in diesem Prozess benötigt wird Achten Sie bei der Implementierung des Bestätigungscodes auf die Konfigurationsparameter und Aufrufmethoden. Gleichzeitig müssen Sie die Implementierung des Bestätigungscodes mit der Geschäftslogik kombinieren und die Vorteile des Bestätigungscodes geschickt nutzen, um die Sicherheit und Gesundheit zu gewährleisten Entwicklung der Website.

Das obige ist der detaillierte Inhalt vonBesprechen Sie die Implementierung des Thinkphp-Verifizierungscodes. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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