起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6095|回复: 12

[处理中] 悬赏第二蛋,关于短信验证码、短信通知功能、密码MD5加密

  [复制链接]

12

主题

45

帖子

261

积分

中级会员

Rank: 3Rank: 3

积分
261
QQ
发表于 2016-8-22 10:59:16 | 显示全部楼层 |阅读模式
500金币
本帖最后由 w11w11w 于 2016-8-23 15:13 编辑

                      第一蛋已经有风大大解决了;现在发布悬赏第二蛋,关于注册短信验证码获取比对、会员短信通知功能、密码MD5加密处理等相关内容,运行环境和界面可以参照第一蛋。

问题描述:1、学习使用论坛里关于短信一块的内容,思路对我来讲实在是太深了
               
                                  2、因为注册登录使用是网站后台数据库,数据库密码加密使用MD5+随机因子,使用论坛里的一些方法实在是处理不了
                 
                                 
                  答案要求:1、提供解决问题思路说明;
               
                                   2、提供解决问题的JS代码(不能加密哦)JS代码里要加注释(解决问题部分);
                 
                                  3、简单才是硬道理






最佳答案

查看完整内容

先回答md5加密的,短信那块有高手会的话可以回答。 答案要求的第2点,提供解决问题的JS代码。这样看来问题就很简单了。 正题: 先说思路,就是用户注册的时候输入的密码进行md5加密,然后保存到数据库(注册过程简单说)。用户登录的时候输入的密码也是进行md5加密(这里先不管密码对不对),然后将加密后的密码和用户名去跟数据库中的数据进行对比,看有没有相同的,有相同的则登陆成功。 ...

评分

参与人数 2威望 +70 收起 理由
Masion + 20 鼓励多利用起步的金币工具
make + 50 楼主确实很给力!

查看全部评分

93

主题

570

帖子

1411

积分

金牌会员

Rank: 6Rank: 6

积分
1411
QQ
发表于 2016-8-22 10:59:17 | 显示全部楼层
先回答md5加密的,短信那块有高手会的话可以回答。
答案要求的第2点,提供解决问题的JS代码。这样看来问题就很简单了。
正题:
先说思路,就是用户注册的时候输入的密码进行md5加密,然后保存到数据库(注册过程简单说)。用户登录的时候输入的密码也是进行md5加密(这里先不管密码对不对),然后将加密后的密码和用户名去跟数据库中的数据进行对比,看有没有相同的,有相同的则登陆成功。
  1. var md5Data = this.comp("md5Data");
  2.                 //获取用户输入的密码
  3.                 var input = this.comp("input1").val();
  4.                 //将密码进行md5加密
  5.                 var m = md5.hex_md5_salt(input);
  6.                 //这个是打印加密后的密码,测试用的。
  7.                 console.log(m);
  8.                 //拿这个密码,过滤数据库中的数据,看下count()是不是大于0
  9.                 md5Data.setFilter("f1", "password='"+m+"'");
  10.                 md5Data.refreshData();
  11.                 console.log(md5Data.count());
复制代码




qq:7953899
点评回复

使用道具 举报

12

主题

45

帖子

261

积分

中级会员

Rank: 3Rank: 3

积分
261
QQ
 楼主| 发表于 2016-8-22 11:19:57 | 显示全部楼层
PS:悬赏第三蛋,手机蓝牙和外部蓝牙设备交互处理方法,费用1万人民币;

问题描述,手机中APP软件调用手机蓝牙接收来自外部蓝牙设备的监测内容(图形和数据),并且把图像和数据发往外部服务器()做比对,比对完后发回手机APP端的数据库保存;我会现场做演示原蓝牙设备APP使用步骤和方法,提供外部比对服务器的API;

答案要求:答案要求:1、提供解决问题思路说明;
               
                                   2、提供解决问题的界面设计源码、JS代码(不能加密哦)JS代码里要加注释(全部);
                 
                                  3、简单才是硬道理



附加要求人员地区限制:因设备现在只有一台,本人需要去你们那里当面演示,暂定无锡地区、南京地区,本来还考虑杭州地区,但是杭州在搞G20,去一次太麻烦了;
               
点评回复

使用道具 举报

93

主题

570

帖子

1411

积分

金牌会员

Rank: 6Rank: 6

积分
1411
QQ
发表于 2016-8-22 11:59:13 | 显示全部楼层
.js文件开头这样写
  1. define(function(require) {
  2.         var $ = require("jquery");
  3.         var justep = require("$UI/system/lib/justep");
  4.         var MD5 = require('$UI/system/lib/base/md5');
  5.         md5 = new MD5();
复制代码
qq:7953899
点评回复

使用道具 举报

12

主题

45

帖子

261

积分

中级会员

Rank: 3Rank: 3

积分
261
QQ
 楼主| 发表于 2016-8-22 12:19:56 | 显示全部楼层
本帖最后由 w11w11w 于 2016-8-23 15:11 编辑

谢谢风大,我去试试先


点评回复

使用道具 举报

39

主题

144

帖子

1308

积分

金牌会员

Rank: 6Rank: 6

积分
1308
QQ
发表于 2016-8-22 15:17:38 | 显示全部楼层
本帖最后由 tomnet 于 2016-8-22 15:29 编辑

短信好搞,怎么没留个qq呢?
注册页面上面 有个 获取验证码的 按钮, 点击,到后台生成一个随机数,保存到 session 里面,并发出手机短信,
注册提交时,样子 验证码 是否正确
点评回复

使用道具 举报

39

主题

144

帖子

1308

积分

金牌会员

Rank: 6Rank: 6

积分
1308
QQ
发表于 2016-8-22 15:26:02 | 显示全部楼层
Model.prototype.get_verify_codeClick = function(event){
            var issend = false;
            var phone = this.comp("phone").val();
            if(!/^(13[0-9]|14[0-9]|15[0-9]|18[0-9])\d{8}$/i.test(phone))
                {
                  justep.Util.hint("请填写正确的手机号码!");                 
                  return false;
                }
               
                 //检查手机是否已经注册过
            var params2 = {
                        // 构建参数                       
                        "mobile" : phone                       
                };
                var success2 = function(resultData) {                  
                        // 请求成功
                        if(resultData.msg=="yes"){
                           justep.Util.hint("手机号码已被用,请更换一个!");                          
                           return false;
                        }       
                        issend = true;               
                };
                var error2 = function(msg) {
                        // 请求失败                       
                        Baas.showError(msg);
                };
                Baas.sendRequest({
                        "url" : "/123/456",
                        "action" : "checkMobile",
                        "params" : params2,
                        "success" : success2,
                        "error" : error2
                });
               
                var wait=60;  
                var o = this.comp("get_verify_code");
                function time() {  
                    if (wait == 0) {                          
                          o.set({"disabled":false,"label":"获取验证码"});
                          wait = 60;  
                     } else {                          
                          o.set({"disabled":true,"label":"重新发送(" + wait + ")"});                          
                          wait--;  
                          setTimeout(function() {  time()}, 1000) ;
                         }  
                }
                                    
                //发送验证码
            var params = {
                        // 构建参数                       
                        "phone" : phone                       
                };
                var success = function(resultData) {                  
                        // 请求成功
                        if(resultData.msg!="no"){
                                  time();                          
                        }                       
                };
                var error = function(msg) {
                        // 请求失败                       
                        Baas.showError(msg);
                };
               
          if(issend){
                Baas.sendRequest({
                        "url" : "/123/456",
                        "action" : "sendVerifycode",
                        "params" : params,
                        "success" : success,
                        "error" : error
                });
          }       

        };


点评回复

使用道具 举报

39

主题

144

帖子

1308

积分

金牌会员

Rank: 6Rank: 6

积分
1308
QQ
发表于 2016-8-22 15:31:54 | 显示全部楼层
        Model.prototype.submitClick = function(event){
            var name = this.comp("name").val();
            if(name==""){
                justep.Util.hint("请填写正确的姓名!");
                return false;
            }
            var phone = this.comp("phone").val();
            if(!/^(13[0-9]|14[0-9]|15[0-9]|18[0-9])\d{8}$/i.test(phone))
                {
                  justep.Util.hint("请填写正确的手机号码!");                 
                  return false;
                }
                var verifycode = this.comp("verifycode").val();
            if(verifycode==""){
                justep.Util.hint("请填写正确的验证码!");
                return false;
            }
        var password = this.comp("password").val();
            if(password==""){
                justep.Util.hint("请填写密码!");
                return false;
            }
            var password_again = this.comp("password_again").val();
            if(password_again != password){
                justep.Util.hint("二次填写的密码不一样!");
                return false;
            }
            
          
                var error = function(msg) {
                        // 请求失败                       
                        Baas.showError(msg);
                };
       
               
                //检查验证码是否正确
            var params2 = {
                        // 构建参数                       
                        "verifycode" : verifycode                       
                };
                var success2 = function(resultData) {                  
                        // 请求成功
                        if(resultData.msg=="no"){
                           justep.Util.hint("验证码错误,请更换一个!");                          
                           return false;
                        }                       
                };       
                Baas.sendRequest({
                        "url" : "/123/456",
                        "action" : "checkVerifycode",
                        "params" : params2,
                        "success" : success2,
                        "error" : error
                });
               
                //注册用户数据保存
            var params3 = {
                        // 构建参数                       
                        "name" : name,
                        "phone" : phone,
                        "password" : password                       
                };
                var success3 = function(resultData) {                  
                        // 请求成功
                        if(resultData.msg=="yes"){
                           justep.Util.hint("注册成功!");                          
                           window.location.href="./login.w";   //登录成功,跳转到APP首页
                        }                       
                };
               
                Baas.sendRequest({
                        "url" : "/123/456",
                        "action" : "register",
                        "params" : params3,
                        "success" : success3,
                        "error" : error
                });
               
               
        };
点评回复

使用道具 举报

12

主题

45

帖子

261

积分

中级会员

Rank: 3Rank: 3

积分
261
QQ
 楼主| 发表于 2016-8-22 15:58:00 | 显示全部楼层
本帖最后由 w11w11w 于 2016-8-22 16:05 编辑
tomnet 发表于 2016-8-22 15:31
Model.prototype.submitClick = function(event){
            var name = this.comp("name").val();
            if(nam ...

谢谢大大,前一个帖子和后一个帖子的区别是什么,可以说明下吗?
QQ653030602

点评回复

使用道具 举报

39

主题

144

帖子

1308

积分

金牌会员

Rank: 6Rank: 6

积分
1308
QQ
发表于 2016-8-22 16:49:18 | 显示全部楼层
一个是注册页面, 获得验证码 按钮方法,  一个是 注册页面  提交按钮 方法
点评回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-3-29 19:52 , Processed in 0.069187 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表