Maison >développement back-end >tutoriel php >Comment envoyer un code de vérification de téléphone mobile et une notification SMS lorsque l'utilisateur s'inscrit en PHP
Comment envoyer un code de vérification du téléphone mobile et une notification par SMS lorsque l'utilisateur s'inscrit en PHP
Présentation :
Pendant le processus d'enregistrement de l'utilisateur, afin de garantir la sécurité du compte, les utilisateurs sont généralement tenus d'effectuer une vérification du téléphone mobile. Cet article expliquera comment utiliser le langage de programmation PHP pour implémenter la fonction d'envoi de codes de vérification de téléphone mobile et de notifications SMS lorsque les utilisateurs s'inscrivent. Nous utiliserons le service Alibaba Cloud SMS comme exemple, mais il peut être adapté à d'autres fournisseurs de services SMS.
Prérequis :
Étapes :
Introduisez le fichier SDK Alibaba Cloud SMS.
require_once 'aliyun-sdk-php/autoload.php';
Définissez les informations relatives au compte Alibaba Cloud.
use AliyunCoreConfig; use AliyunCoreProfileDefaultProfile; Config::load(); $accessKeyId = 'yourAccessKeyId'; $accessKeySecret = 'yourAccessKeySecret'; $signName = 'yourSignName'; $templateCode = 'yourTemplateCode';
Remarque : remplacez yourAccessKeyId
et yourAccessKeySecret
par votre clé d'accès Alibaba Cloud (disponible sur la console Alibaba Cloud), remplacez yourSignName
et remplacez yourTemplateCode
avec votre signature SMS et votre code modèle. yourAccessKeyId
和yourAccessKeySecret
替换成你的阿里云AccessKey(可在阿里云控制台获取),将yourSignName
和yourTemplateCode
替换成你的短信签名和模板码。
生成随机的6位数验证码。
$code = rand(100000, 999999); // 生成一个6位数的验证码
将验证码保存在会话(session)中,后续验证使用。
session_start(); $_SESSION['code'] = $code;
准备短信模板参数。
$params = array( 'code' => $code );
调用阿里云短信SDK发送短信。
use AliyunApiMsgSmsRequestV20170525SendSmsRequest; use AliyunCoreDefaultAcsClient; use AliyunCoreProfileDefaultProfile; $profile = DefaultProfile::getProfile('yourRegionId', $accessKeyId, $accessKeySecret); DefaultProfile::addEndpoint('yourEndPoint', 'yourRegionId', 'Sms', 'sms.aliyuncs.com'); $client = new DefaultAcsClient($profile); $request = new SendSmsRequest(); $request->setPhoneNumbers('yourPhoneNumber'); $request->setSignName($signName); $request->setTemplateCode($templateCode); $request->setTemplateParam(json_encode($params)); $response = $client->getAcsResponse($request);
注意:将yourRegionId
替换成你的阿里云地区ID,将yourEndPoint
替换成你的阿里云EndPoint,将yourPhoneNumber
if($response->Code == 'OK') { echo '短信发送成功!'; } else { echo '短信发送失败,错误代码:' . $response->Code; }
rrreee
Préparez les paramètres du modèle SMS.
yourRegionId
par votre identifiant de région Alibaba Cloud, remplacez yourEndPoint
par votre Alibaba Cloud EndPoint et remplacez yourPhoneNumber
par le téléphone mobile. numéro pour recevoir des SMS. 🎜🎜🎜🎜Procédez en conséquence en fonction du résultat de l'envoi de SMS Alibaba Cloud. 🎜rrreee🎜🎜🎜Jusqu'à présent, nous avons implémenté avec succès la fonction d'envoi de codes de vérification de téléphone portable et de notifications SMS lorsque les utilisateurs s'inscrivent. Lorsque les utilisateurs saisissent le code de vérification du téléphone mobile, ils peuvent vérifier sa validité en le comparant avec le code de vérification de la session. 🎜🎜Résumé : 🎜Pour implémenter les codes de vérification du téléphone mobile et les notifications SMS lorsque l'enregistrement des utilisateurs est implémenté en PHP, nous devons d'abord introduire le SDK Alibaba Cloud SMS, puis définir les informations relatives au compte Alibaba Cloud. Ensuite, nous générons un code de vérification aléatoire à 6 chiffres et l'enregistrons dans la session. En définissant les paramètres du modèle SMS, appelez le SDK Alibaba Cloud SMS pour envoyer des messages SMS. Enfin, le traitement correspondant est effectué en fonction du résultat de l'envoi. Grâce à cette implémentation, les utilisateurs peuvent obtenir des codes de vérification lors de leur inscription et la sécurité de leurs comptes peut être assurée. 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!