CMS 튜토리얼 Dedecms DreamWeaver의 SMS 인증코드 기능을 구현하는 방법

DreamWeaver의 SMS 인증코드 기능을 구현하는 방법

Dec 13, 2019 am 09:50 AM
꿈 짜기

DreamWeaver의 SMS 인증코드 기능을 구현하는 방법

DreamWeaver의 SMS 인증 코드 기능을 구현하는 방법은 무엇입니까?

대부분의 웹사이트에는 이제 SMS 확인 코드가 필요합니다. DreamWeaver에는 공식적으로 SMS 확인 코드 플러그인이 없기 때문에 하나는 Alibaba Cloud의 SMS 확인 코드 인터페이스를 사용하고 다른 하나는 Alibaba의 SMS를 사용합니다. 인증 코드 인터페이스 중 하나는 Alibaba Communication SMS 인증 코드 인터페이스를 사용하고, 다른 하나는 Yunzhixun의 SMS 인터페이스를 사용합니다.

추천 학습: Dreamweaver cms

다음 튜토리얼에는 2개의 Dreamweaver SMS 확인 코드 인터페이스가 포함되어 있습니다.

드림위버 회원의 SMS 등록 시 수정해야 할 사항:

1. 다중 전송을 방지하기 위해 인증 코드를 기록하는 테이블을 생성해야 합니다. 여기서 전화코드 테이블이 생성됩니다.

2. member/templets/reg-new.htm (등록 템플릿에 요소 추가)

3. member/templets/js/reg_new.js (휴대폰 번호 확인)

4. member/index_do.php (에 따름)

5. member/reg_new.php (확인, 기록)

a 액세스하려면 Alibaba Cloud SMS 인터페이스를 사용하세요.

Alibaba Cloud를 삽입해야 합니다. member/index_do.php 인터페이스 코드의 해당 위치에 있는 SMS입니다. 특히 Alibaba Cloud SMS의 공식 데모 문서는 마스터가 작성했기 때문에 일반 사람들이 이를 사용할 때 네임스페이스 오류를 보고할 것이라는 점에 유의해야 합니다. 또한 이제 SMS 템플릿을 업데이트해야 합니다. Alibaba SMS 템플릿 검토는 매우 엄격하며 이전에는 이 문제가 허용되지 않았습니다. 따라서 감사에 실패하면 변수를 줄여야 합니다. (현재는 더 이상 Alibaba Cloud SMS 인터페이스를 활성화할 수 없습니다. 새로 오픈된 Alibaba Cloud SMS 인터페이스는 이 코드를 사용할 수 없습니다. 오랫동안 Alibaba Cloud SMS를 개설한 사용자에게만 적합합니다.)

function getrandchar($length){
    $str = null;
    $strPol = "0123456789abcdefghijklmnopqrstuvwxyz";
    $max = strlen($strPol)-1;
        for($i=0;$i<$length;$i++){
        $str.=$strPol[rand(0,$max)];
        }
        return $str;
    }
    $code = getrandchar(5);
  
    require_once(DEDEINC.&#39;/aliyun-php-sdk-core/Config.php&#39;);
    use Sms\Request\V20160927 as Sms;
    $iClientProfile = DefaultProfile::getProfile("cn-shenzhen", "your accessKey", "your accessSecret"); //登录阿里云查看: "your accessKey", "your accessSecret"
    $client = new DefaultAcsClient($iClientProfile);   
    $request = new Sms\SingleSendSmsRequest();
    $request->setSignName("签名");/*签名名称*/
    $request->setTemplateCode("SMS_1111");/*模板code*/
    $request->setRecNum($phone);/*目标手机号*/
    $request->setParamString("{\"code\":\"$code\",\"tel\":\"电话号码\"}");/*模板变量,请确保跟审核过的短信模版变量一致,数字一定要转换为字符串*/
    try {
        $response = $client->getAcsResponse($request);
        print_r($response);
    }
    catch (ClientException  $e) {
        print_r($e->getErrorCode());  
        print_r($e->getErrorMessage());  
    }
    catch (ServerException  $e) {  
        print_r($e->getErrorCode());  
        print_r($e->getErrorMessage());
    }
      
    $inquery = " INSERT INTO `dede_phonecode` (`ip`,`phone`,`phonecode`,`used`,`sendtime`) VALUES ( &#39;$ip&#39;,&#39;$to&#39;,&#39;$code&#39;,&#39;1&#39;,&#39;$nowtime&#39;); ";
    $rs = $dsql->ExecuteNoneQuery2($inquery);
    if( $rs = 1 ){
        ShowMsg(&#39;发送成功,请注意查收!&#39;,&#39;-1&#39;);
        exit();
    }
    exit();
로그인 후 복사

첨부된 내용은 다음과 같습니다. Alibaba Cloud SMS 템플릿: 확인 코드: ${code}. 귀하가 등록을 하지 않은 경우 이 메시지를 무시하십시오. 궁금한 점이 있으면 문의하세요! 전화: ${tel}

b. Alibaba Dayu의 SMS 인터페이스를 사용하여 액세스하세요.

마찬가지로 member/index_do.php의 해당 위치에 다음 코드를 삽입해야 합니다.

function getrandchar($length){
$str = null;
//$strPol = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz";
$strPol = "0123456789abcdefghijklmnopqrstuvwxyz";
$max = strlen($strPol)-1;
for($i=0;$i<$length;$i++){
$str.=$strPol[rand(0,$max)];
}
return $str;
}
$code = getrandchar(5);
  
require_once(DEDEINC.&#39;/alidayu-php-sdk/TopSdk.php&#39;);
$client = new TopClient;
$client ->appkey = &#39;111111&#39; ; //登录阿里大于查看appkey。
$client ->secretKey = &#39;aaaaaaaaaaaaaa&#39; ; //登录阿里大于查看secret。
$req = new AlibabaAliqinFcSmsNumSendRequest;
$req ->setExtend( "" );
$req ->setSmsType( "normal" );
$req ->setSmsFreeSignName( "城子居" ); /*签名名称*/
$req ->setSmsParam( "{\"code\":\"$code\",\"name\":\"注册\"}" ); /*模板变量,请确保跟审核过的短信模版变量一致,数字一定要转换为字符串*/
$req ->setRecNum($phone);/*目标手机号*/
$req ->setSmsTemplateCode( "SMS_1111111" );//登录阿里大于查看/*模板ID编号*/
$resp = $client ->execute( $req );
  
$inquery = " INSERT INTO `imm_phonecode` (`ip`,`phone`,`phonecode`,`used`,`sendtime`)  VALUES ( &#39;$ip&#39;,&#39;$to&#39;,&#39;$code&#39;,&#39;1&#39;,&#39;$nowtime&#39;); ";
$rs = $dsql->ExecuteNoneQuery2($inquery);
if( $rs = 1 ){
ShowMsg(&#39;发送成功,请注意查收!&#39;,&#39;-1&#39;);
exit();
}
exit();
로그인 후 복사

c. 최신 Alibaba Communication SMS 인터페이스를 사용하여 액세스하세요.

function getrandchar($length){
$str = null;
//$strPol = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz";
$strPol = "0123456789";
$max = strlen($strPol)-1;
for($i=0;$i<$length;$i++){
$str.=$strPol[rand(0,$max)];
}
return $str;
}
$number = getrandchar(4);
  
require_once(DEDEINC.&#39;/aliyun-php-sdk-core/Config.php&#39;);
require_once(DEDEINC.&#39;/Dysmsapi/Request/V20170525/SendSmsRequest.php&#39;);
require_once(DEDEINC.&#39;/Dysmsapi/Request/V20170525/QuerySendDetailsRequest.php&#39;);
  
function sendSms() {
global $phone, $number;
  
//此处需要替换成自己的AK信息
$accessKeyId = "yourAccessKeyId";
$accessKeySecret = "yourAccessKeySecret";
//短信API产品名
$product = "Dysmsapi";
//短信API产品域名
$domain = "dysmsapi.aliyuncs.com";
//暂时不支持多Region
$region = "cn-beijing";
  
//初始化访问的acsCleint
$profile = DefaultProfile::getProfile($region, $accessKeyId, $accessKeySecret);
DefaultProfile::addEndpoint("cn-beijing", "cn-beijing", $product, $domain);
$acsClient= new DefaultAcsClient($profile);
  
$request = new Dysmsapi\Request\V20170525\SendSmsRequest;
//必填-短信接收号码
$request->setPhoneNumbers($phone);
//必填-短信签名
$request->setSignName("99商铺网");
//必填-短信模板Code
$request->setTemplateCode("SMS_74725029");
//选填-假如模板中存在变量需要替换则为必填(JSON格式)
$request->setTemplateParam("{\"number\":\"$number\"}");
//选填-发送短信流水号
$request->setOutId("1234");
  
//发起访问请求
$acsResponse = $acsClient->getAcsResponse($request);
}
  
sendSms();
  
$inquery = " INSERT INTO `imm_phonecode` (`ip`,`phone`,`phonecode`,`used`,`sendtime`)  VALUES ( &#39;$ip&#39;,&#39;$phone&#39;,&#39;$number&#39;,&#39;1&#39;,&#39;$nowtime&#39;); ";
$rs = $dsql->ExecuteNoneQuery2($inquery);
if( $rs = 1 ){
echo "发送成功,请注意查收!";
exit();
}
exit();
로그인 후 복사

여기에 Alibaba의 세 가지 SMS 인터페이스가 모두 있습니다. 해당 SDK는 공식 Alibaba Cloud에서 다운로드해야 합니다.

d. Yunzhixun SMS 인터페이스를 사용하여 액세스:

마찬가지로 member/index_do.php의 해당 위치에 Yunzhixun SMS 인터페이스 코드를 삽입해야 합니다.

function getrandchar($length){
$str = null;
$strPol = "0123456789abcdefghijklmnopqrstuvwxyz";
$max = strlen($strPol)-1;
for($i=0;$i<$length;$i++){
$str.=$strPol[rand(0,$max)];
}
return $str;
}
require_once(DEDEINC.&#39;/ucpaas.class.php&#39;);
$options[&#39;accountsid&#39;]=&#39;&#39;;  //对应ucpaas.com用户ID
$options[&#39;token&#39;]=&#39;&#39;;  //对应ucpaas.com里面的用户token
$ucpass = new Ucpaas($options);
$appId = ""; //对应ucpaas.com里面的项目ID
$to = $phone;
$templateId = ""; //对应ucpaas.com里面的短信模版ID
$code = getrandchar(5);
$param= $code.&#39;,短信模版参数2&#39;.&#39;,短信模版参数3&#39;; // $code为生成的验证码,短信模版参数2,短信模版参数3,参数之间用英文逗号间隔。
$ucpass->templateSMS($appId,$to,$templateId,$param);
  
$inquery = " INSERT INTO `dede_phonecode` (`ip`,`phone`,`phonecode`,`used`,`sendtime`) VALUES ( &#39;$ip&#39;,&#39;$to&#39;,&#39;$code&#39;,&#39;1&#39;,&#39;$nowtime&#39;); ";
$rs = $dsql->ExecuteNoneQuery2($inquery);
if( $rs = 1 ){
ShowMsg(&#39;发送成功,请注意查收!&#39;,&#39;-1&#39;);
exit();
}
exit();
로그인 후 복사

마찬가지로 SMS 템플릿을 첨부하세요: 인증 코드: {1}. 귀하는 {2}에 있습니다. 이에 대한 책임이 없다면 이 메시지를 무시하십시오. 궁금한 점이 있으면 전화: {3}

로 문의하세요.

위 내용은 DreamWeaver의 SMS 인증코드 기능을 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. 크로스 플레이가 있습니까?
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

DreamWeaver에서 CSS를 가져오는 방법 DreamWeaver에서 CSS를 가져오는 방법 Dec 03, 2020 pm 04:03 PM

DreamWeaver로 CSS를 가져오는 방법: 1. HTML 템플릿 파일을 "templets" 폴더에 넣습니다. 2. HTML 파일의 접미사를 ".htm"으로 변경합니다. 3. 원본 스타일 앞에 "{dede:"를 추가합니다. 경로: global.cfg_templets_skin/}"을 사용할 수 있습니다.

Dreamweaver에서 php7.0을 설치하지 못하는 경우 문제를 해결하는 방법 Dreamweaver에서 php7.0을 설치하지 못하는 경우 문제를 해결하는 방법 Mar 23, 2023 am 11:11 AM

Dreamweaver를 설치할 때 문제가 발생하는 것은 일반적인 상황입니다. 가능한 문제 중 하나는 php7.0을 성공적으로 설치할 수 없다는 것입니다. 이번 글에서는 이 문제를 해결하는 방법을 설명하겠습니다.

Dreamweaver PHP5.7 버전의 새로운 기능과 장점에 대해 설명하는 기사 Dreamweaver PHP5.7 버전의 새로운 기능과 장점에 대해 설명하는 기사 Mar 21, 2023 am 09:36 AM

Dreamweaver는 매우 유명한 CMS로, 단순성과 사용 용이성으로 인해 백엔드가 PHP를 사용하여 개발되었으며 최신 공식 버전은 Dreamweaver PHP 5.7입니다. 이 기사에서는 DreamWeaver PHP 5.7 버전의 새로운 기능과 장점을 살펴보겠습니다.

CMS 데이터베이스 파일 복구 방법에 대한 자세한 설명 CMS 데이터베이스 파일 복구 방법에 대한 자세한 설명 Mar 13, 2024 pm 03:15 PM

데이터베이스는 웹사이트 운영의 핵심이며 사용자 데이터, 기사 내용 등 중요한 정보를 저장하고 있으므로 웹사이트 운영 중에는 데이터베이스 파일의 백업 및 복구가 특히 중요합니다. Dreamweaver CMS를 사용하여 구축된 웹 사이트의 경우 데이터베이스 파일 복구도 중요한 작업입니다. 이 문서에서는 Dreamweaver CMS 데이터베이스 파일의 복구 방법을 자세히 소개하고 사용자가 웹 사이트 데이터를 신속하게 복원하고 웹 사이트의 정상적인 작동을 보장하는 데 도움이 되는 특정 코드 예제를 제공합니다. 1. 데이터베이스 파일을 백업하기 전에 먼저 해당 파일이 백업되었는지 확인해야 합니다.

DreamWeaver에 필요한 PHP 버전 및 구성 요소 수에 대한 간략한 분석 DreamWeaver에 필요한 PHP 버전 및 구성 요소 수에 대한 간략한 분석 Mar 21, 2023 am 10:50 AM

DreamWeaver는 매우 인기 있는 웹 사이트 구축 시스템이며 그 아키텍처는 PHP 언어를 기반으로 합니다. 따라서 DreamWeaver를 실행하려면 PHP가 필요합니다. 그렇다면 꿈을 엮기 위해서는 구체적으로 몇 개의 PHP가 필요한가요? 이것은 간단한 질문이 아닙니다. 이 문서에서는 Dreamweaver에 필요한 PHP 버전과 구성 요소 수를 다음 측면에서 소개합니다.

cms는 꿈의 직공인가요? cms는 꿈의 직공인가요? Mar 01, 2023 am 09:58 AM

cms는 Dreamweaver가 아니며 cms는 콘텐츠 관리 시스템을 의미하며 Dreamweaver는 일종의 cms일 뿐이며 Dreamweaver cms는 Dreamweaver 콘텐츠 관리 시스템을 의미하며 콘텐츠 관리 시스템은 일종의 WEB 프런트엔드 및 백엔드 오피스 시스템 또는 프로세스입니다. . 웹사이트 간 소프트웨어 시스템은 템플릿을 기반으로 한 많은 우수한 디자인을 갖추고 있어 웹사이트 개발 속도를 높이고 개발 비용을 절감할 수 있습니다.

Dreamweaver PHP5의 핵심 포인트를 마스터하세요 Dreamweaver PHP5의 핵심 포인트를 마스터하세요 Mar 26, 2024 am 11:12 AM

Dreamweaver CMS는 PHP5를 기반으로 개발된 오픈 소스 콘텐츠 관리 시스템으로 웹 사이트 구축 분야에서 널리 사용됩니다. 개발자가 Dreamweaver PHP5의 핵심 사항을 숙지하는 것은 매우 중요합니다. 이 기사에서는 독자가 DreamWeaver PHP5를 더 잘 이해하고 적용하는 데 도움이 되는 몇 가지 핵심 사항을 소개하고 특정 코드 예제를 제공합니다. 1. DreamWeaver CMS 개발에 포함된 파일은 서로 다른 파일 간의 데이터 공유 및 코드 재사용이 필요한 경우가 많습니다. PHP의 파일 포함 기능은 이 문제를 해결하는 효과적인 방법입니다. Dreamweaver CMS에서는 종종

DreamWeaver에는 어떤 버전의 PHP가 필요합니까? DreamWeaver에는 어떤 버전의 PHP가 필요합니까? Jun 06, 2023 pm 01:20 PM

Dreamweaver에는 PHP 버전 5.2 이상이 필요합니다. 1. 먼저 PHP를 설치하고 환경을 구성합니다. 2. DedeCMS 설치 패키지를 다운로드하여 웹 사이트의 루트 디렉터리에 추출합니다. 3. 웹 사이트 URL을 열고 프롬프트를 따릅니다. 4. 설치가 완료되면 http://localhost/yourwebsite를 통해 Dreamweaver 백엔드에 액세스할 수 있습니다.

See all articles