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 de téléphone mobile et une notification SMS lorsque l'utilisateur s'inscrit en PHP

WBOY
WBOYoriginal
2023-09-27 21:52:461010parcourir

Comment envoyer un code de vérification de téléphone mobile et une notification SMS lorsque lutilisateur sinscrit 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 :

  1. Possèdez déjà un compte Alibaba Cloud et êtes connecté pour créer un modèle SMS.
  2. Le SDK Alibaba Cloud SMS a été intégré.

Étapes :

  1. Introduisez le fichier SDK Alibaba Cloud SMS.

    require_once 'aliyun-sdk-php/autoload.php';
  2. 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. yourAccessKeyIdyourAccessKeySecret替换成你的阿里云AccessKey(可在阿里云控制台获取),将yourSignNameyourTemplateCode替换成你的短信签名和模板码。

  3. 生成随机的6位数验证码。

    $code = rand(100000, 999999); // 生成一个6位数的验证码
  4. 将验证码保存在会话(session)中,后续验证使用。

    session_start();
    $_SESSION['code'] = $code;
  5. 准备短信模板参数。

    $params = array(
       'code' => $code
    );
  6. 调用阿里云短信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

  7. Générez un code de vérification aléatoire à 6 chiffres.

    if($response->Code == 'OK') {
       echo '短信发送成功!';
    } else {
       echo '短信发送失败,错误代码:' . $response->Code;
    }

Enregistrez le code de vérification dans la session et utilisez-le pour une vérification ultérieure.

rrreee


Préparez les paramètres du modèle SMS.

rrreee🎜🎜🎜Appelez le SDK Alibaba Cloud SMS pour envoyer des messages texte. 🎜rrreee🎜Remarque : remplacez 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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn