Web网站实现简单的短信注册功能(php+mysql+ajax+阿里云短信服务)

1.效果图

Web网站实现简单的短信注册功能(php+mysql+ajax+阿里云短信服务)_第1张图片

 

Web网站实现简单的短信注册功能(php+mysql+ajax+阿里云短信服务)_第2张图片

 

2.前期准备:

① 大家可以先看一看阿里云官方的入门教程   传送门:

https://help.aliyun.com/document_detail/55288.html?spm=a2c4g.11186623.6.557.568a66faTr3BOC

②这里就假装大家已经完成了:

  a.开通短信服务

  Web网站实现简单的短信注册功能(php+mysql+ajax+阿里云短信服务)_第3张图片

 

b.创建AccessKey

 

Web网站实现简单的短信注册功能(php+mysql+ajax+阿里云短信服务)_第4张图片

  c.申请短信签名(审核30分钟以内通过)

 

  

 

  d.申请短信模板(审核30分钟以内通过)

  Web网站实现简单的短信注册功能(php+mysql+ajax+阿里云短信服务)_第5张图片

 

3.生成专属Demo:

 进入OpenAPI Explorer

 

 

 按要求输入手机号,短信签名,短信模板ID等,生成对应SDK的Demo代码

 Web网站实现简单的短信注册功能(php+mysql+ajax+阿里云短信服务)_第6张图片

 

示例:

', '')

                        ->regionId('cn-hangzhou')

                        ->asDefaultClient();



try {

    $result = AlibabaCloud::rpc()

                          ->product('Dysmsapi')

                          // ->scheme('https') // https | http

                          ->version('2017-05-25')

                          ->action('SendSms')

                          ->method('POST')

                          ->host('dysmsapi.aliyuncs.com')

                          ->options([

                                        'query' => [

                                          'RegionId' => "cn-hangzhou",

                                          'PhoneNumbers' => "*******",

                                          'SignName' => "*****",

                                          'TemplateCode' => "*****",

                                        ],

                                    ])

                          ->request();

    print_r($result->toArray());

} catch (ClientException $e) {

    echo $e->getErrorMessage() . PHP_EOL;

} catch (ServerException $e) {

    echo $e->getErrorMessage() . PHP_EOL;

}

 

如果出现错误,请查看SendSms API错误码列表

 

4.环境搭建

①下载并安装Composer。

Linux:

curl -sS https://getcomposer.org/installer | php

Windows:

官网下载并安装Composer

②进入项目文件夹

如果已在系统上全局安装 Composer,请直接在项目目录中运行以下内容来安装 Alibaba Cloud SDK for PHP 作为依赖项并生成类映射:

composer require alibabacloud/sdk --optimize-autoloader

 

③类映射生成

必须开启类映射生成功能才能使用 Alibaba Cloud SDK for PHP

有3种方法:

在 composer.json 文件中 config 部分增加 "optimize-autoloader": true ,可一劳永逸。

执行 composer install 或 composer update 时增加 -o 或 --optimize-autoloader 选项。

执行 composer dump-autoload 时增加 -o 或 --optimize 选项。

 

 

④执行Composer命令安装Alibaba Cloud SDK for PHP的最新版本

php -d memory_limit=-1 composer.phar require alibabacloud/sdk

 

在项目的文件夹下出现此文件:

Web网站实现简单的短信注册功能(php+mysql+ajax+阿里云短信服务)_第7张图片

 

⑤在代码中引入Composer自动加载工具

也可以使用:

include_once("../vendor/autoload.php");

 

5.完整代码介绍:

regionId('cn-hangzhou')

                        ->asDefaultClient();



try{

    $result = AlibabaCloud::rpc()

                          ->product('Dysmsapi')

                          ->version('2017-05-25')

                          ->action('SendSms')

                          ->method('POST')

                          ->host('dysmsapi.aliyuncs.com')

                          ->options([

                                        'query' => [

                                        'RegionId' => "cn-hangzhou",

                                        'PhoneNumbers' => $tel 

                                         //你模板中的参数手机号,

                                        'SignName' => "***",

                                         //你的签名名称

                                        'TemplateCode' => "SMS_**",

                                         //你的模板CODE

                                        'TemplateParam'=>'{"code":"'.$verificationCode.'"}',   

                                         //模板参数验证码

                                        ],

                                    ])

                          ->request();

    echo "true";

} catch (ClientException $e) {

    echo $e->getErrorMessage() . PHP_EOL;

} catch (ServerException $e) {

    echo $e->getErrorMessage() . PHP_EOL;

}

 

你可能感兴趣的:(Web前端)