Dans les applications Web modernes, le processus d'enregistrement des utilisateurs ajoute généralement un processus de vérification du code de vérification SMS pour améliorer la sécurité et l'authenticité du processus d'enregistrement. Cet article présentera en détail comment utiliser PHP pour réaliser la fonction de l'envoi de codes de vérification SMS de téléphone mobile lorsque les utilisateurs s'inscrivent et l'expliquent en combinaison avec le code réel.
Pour réaliser la fonction de code de vérification SMS, vous devez d'abord accéder à une plate-forme de service SMS tierce. Actuellement, les plates-formes grand public incluent Alibaba Cloud, Tencent Cloud, Yunpian.com, etc., qui fournissent toutes des interfaces API et prennent en charge l'envoi de messages texte via les demandes HTTP.
Lors de l'enregistrement d'un utilisateur, un code de vérification aléatoire doit être généré et temporairement enregistré pour vérifier l'identité de l'utilisateur. Voici un exemple de fonction PHP utilisée pour générer des codes de vérification à 6 chiffres:
function generateVerificationCode() {
$code = '';
for ($i = 0; $i < 6; $i++) {
$code .= rand(0, 9);
}
return $code;
}
Après avoir sélectionné la plate-forme de service SMS, vous pouvez envoyer des codes de vérification via l'API fournis par celui-ci. L'exemple suivant montre comment utiliser l'API Cloud Pixel pour envoyer le code de vérification SMS:
function sendVerificationCode($phone, $code) {
$apikey = 'your_api_key'; // Remplacer par réelAPIClé
$text = "【YourAppName】Votre code de vérification est" . $code . ",La période de validité est5minute,Veuillez ne pas le divulguer aux autres。";
$url = 'https://sms.yunpian.com/v2/sms/single_send.json';
$data = [
'apikey' => $apikey,
'mobile' => $phone,
'text' => $text,
];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
Une fois l'utilisateur qui a soumis les informations d'enregistrement, la génération de code de vérification et la fonction d'envoi peuvent être appelées pour réaliser le processus complet de vérification des SMS d'enregistrement. Voici l'exemple d'enregistrement complet de la fonction:
function registerUser($phone) {
$verificationCode = generateVerificationCode();
saveVerificationCodeToDatabase($phone, $verificationCode); // Enregistrez le code de vérification dans la base de données
$sendResult = sendVerificationCode($phone, $verificationCode); // Envoyer le code de vérification SMS
if ($sendResult == 'success') {
echo 'Le code de vérification SMS a été envoyé avec succès,Veuillez prêter attention pour vérifier les SMS。';
} else {
echo 'Le code de vérification SMS n'a pas été envoyé,Veuillez réessayer plus tard。';
}
}
Une fois le formulaire frontal soumis, le back-end appelle simplement le registre ($ téléphone) pour terminer la vérification et l'envoi SMS.
Grâce aux exemples de code complets fournis dans cet article, vous pouvez rapidement implémenter la fonction de code de vérification SMS lors de l'enregistrement dans un projet PHP. Cette fonction peut non seulement améliorer l'expérience utilisateur, mais également améliorer efficacement la sécurité de l'enregistrement des comptes. Il est recommandé que les développeurs choisissent une plate-forme stable et formelle en tant que fournisseur de services SMS pour assurer la stabilité des appels d'interface et la fiabilité des données.