How to use PHP and Vue to implement the SMS verification code function
With the popularity of the Internet and the popularity of mobile devices, SMS verification codes have become commonly used on many websites and APPs Ways of identifying. The SMS verification code function can be easily implemented using PHP and Vue. This article will introduce the implementation steps in detail and provide specific code examples.
1. Early preparation
2. Back-end code implementation
<?php session_start(); // 生成随机的验证码 $verify_code = mt_rand(100000, 999999); // 将验证码存入session中 $_SESSION['verify_code'] = $verify_code; // 返回验证码结果 echo json_encode(['code' => $verify_code]); ?>
<?php session_start(); // 获取手机号码 $phone_number = $_POST['phone_number']; // 获取之前生成的验证码 $verify_code = $_SESSION['verify_code']; // 调用短信接口发送短信验证码 // 代码略,根据实际短信接口文档编写发送短信的代码 // 返回发送结果 echo json_encode(['success' => true]); ?>
3. Front-end code implementation
<script src="https://cdn.jsdelivr.net/npm/vue@2.6.14/dist/vue.js"></script> <script src="https://cdn.jsdelivr.net/npm/axios@0.21.1/dist/axios.min.js"></script>
new Vue({ el: '#app', data: { phoneNumber: '', verifyCode: '', serverUrl: '/send_sms.php' }, methods: { // 生成验证码 generateVerifyCode: function() { axios.get('/verify_code.php') .then(function(response) { this.verifyCode = response.data.code; }.bind(this)) .catch(function(error) { console.log(error); }); }, // 发送短信验证码 sendSmsCode: function() { axios.post(this.serverUrl, { phone_number: this.phoneNumber }) .then(function(response) { console.log(response.data); }) .catch(function(error) { console.log(error); }); } } });
<div id="app"> <form> <div class="form-group"> <label for="phone">手机号码</label> <input type="text" class="form-control" id="phone" v-model="phoneNumber"> </div> <div class="form-group"> <label for="code">验证码</label> <input type="text" class="form-control" id="code" v-model="verifyCode"> <button type="button" class="btn btn-primary" @click="generateVerifyCode">获取验证码</button> </div> <button type="button" class="btn btn-primary" @click="sendSmsCode">发送验证码</button> </form> </div>
4. Code analysis
session_start()
to open the session, and generates a six through the mt_rand(100000, 999999)
function digits of random verification code. $_SESSION
array to facilitate subsequent use of the SMS sending interface. echo
. echo
output. phoneNumber
(mobile phone number), verifyCode
(verification code) in the Vue instance ) and serverUrl
(the URL of the SMS sending interface) and other data. The generateVerifyCode
method sends a request to the verify_code.php
interface to obtain and store the verification code. The sendSmsCode
method sends a request to the send_sms.php
interface, and sends the mobile phone number and verification code to the backend as POST parameters. v-model
. generateVerifyCode
method to display the verification code. sendSmsCode
method to send the mobile phone number and verification code to the backend. Through the above steps and codes, we have implemented the SMS verification code function using PHP and Vue. In actual applications, corresponding interface authentication, error handling, etc. need to be carried out according to specific needs.
The above is the detailed content of How to use PHP and Vue to implement SMS verification code function. For more information, please follow other related articles on the PHP Chinese website!