Sind Sie beim Erstellen einer PC-Website schon einmal auf die Funktion gestoßen, die registrierte Benutzer für die SMS-Verifizierung benötigen? Oder rufen Sie Passwörter ab, überprüfen Sie Benutzerinformationen und mehr! Heute bietet Ihnen ThinkPHP die Funktion von ThinkPHP, die die SMS-Verifizierung von Alibaba Dayu integriert!
Zuerst müssen wir das Prinzip des SMS-Versands verstehen. Tatsächlich verwenden wir ein Kommunikations-SMS-Protokoll, und dann senden wir einen zufällig generierten Bestätigungscode an das Mobiltelefon des Benutzers Gleichzeitig müssen die entsprechenden Informationen zur Überprüfung gespeichert werden. Dies ist das Prinzip. Als nächstes zeigen wir Ihnen, wie Sie diese Funktion Schritt für Schritt ausführen.
(1) Wir werden eine Datentabelle zum Speichern von SMS-Nachrichten erstellen
(2) Wir werden eine Klassendatei eines Drittanbieters verwenden. Natürlich können Sie diese Klassendatei von der Plattform herunterladen. Dann können wir sie in thinkphp integrieren Deklarieren Sie den Namespace, wenn Sie ihn zur Klassenbibliothek hinzufügen!
(3) Wir konfigurieren einige Hilfsvariablen in der Konfigurationsdatei
(4) In diesem Schritt beginnen wir mit dem Schreiben logischer Operationen
$_POST['tel'] = "18522713XXX";
$tel = $_POST['tel'];
$w['tel'] = $tel;
$res1 = D("Record")->where($w)->find();
//Sie können an einem Tag nur drei Chancen haben (Verifizierung)
$gap = time()-$res1['ctime'];
if($gap>=86400){
$data['time'] = 0;
D("Record")->where($w)->save($data);
}
$res1 = D("Record")->where($w)->find();
if($res1['time']>=3){
echo „SMS-Limit!“;
}else {
//Der Wert des zufällig gesendeten Bestätigungscodes
$num = rand(1000, 9999);
//Instanziiere ein Objekt
$ecd = new Ecd(C('url'), C('app_key'),
C('app_secret'), C('format'));
//Verifizierungscode-SMS senden
//Der erste Parameter ist die Mobiltelefonnummer, der zweite ist die Vorlagen-ID, die es in der Anwendungsverwaltung
gibt
Die Verwaltung einer Vorlage, der dritte ist der zufällige Bestätigungscode, den wir senden, der dritte ist
Die vierte ist die Bestellnummer, die Sie aber nicht ausfüllen müssen
$res = $ecd->send_sms_code("$tel", '1', "$num", '');
$arr = json_decode($res, true);
if ($arr['result'] == 0 && $arr['msg'] == "Success") {
$w['tel'] = $tel;
$res1 = D("Record")->where($w)->find();
if ($res1) {
$data['vc'] = $num;
$data['time'] = $res1['time'] 1;
$data['ctime'] = time();
$res2 = D("Record")->where($w)->save($data);
if ($res2) {
echo „Erfolgreich gesendet“;
} sonst {
echo „Senden fehlgeschlagen“;
}
} sonst {
$data['tel'] = $tel;
$data['vc'] = $num;
$data['time'] = 1;
$data['ctime'] = time();
$res3 = D("Record")->add($data);
if ($res3) {
echo „Erfolgreich gesendet“;
} sonst {
echo „Senden fehlgeschlagen“;
}
}
}
}
(5) Das bedeutet, dass wir die Textnachricht erhalten und dann, wenn der Benutzer sie absendet, den entsprechenden Bestätigungscode anhand der Mobiltelefonnummer des Benutzers überprüfen!
Eine weitere Sache, auf die Freunde achten sollten, ist, dass nicht authentifizierte Benutzer von Alibaba Dayu nur Textnachrichten an Benutzer in der Whitelist senden können. Sie müssen daher die Whitelist konfigurieren, um den Erfolg unseres Versands sicherzustellen! Außerdem gibt es bei Ihrer ersten Bewerbung 100 kostenlose Artikel zum Testen für uns!