隨筆-61  評論-159  文章-0  trackbacks-0

          1 你根據用戶名采用某個算法生成一個隨機的字符串 
            比如可以根據當前時間和用戶名生成

          String username = ...// 這個是用戶注冊的用戶名
          String sign = MD5.encode(username + System.currentTimeMillis());

          2 把這個字符串保存到用戶的信息中

          user.setRegisterEmailSign(sign); 

          3 發送郵件,鏈接里有這個字符串 

          郵件內容包括一個連接

          <a href="....../registerActive?sign=<%=sign%>">點擊此鏈接激活您的帳號</a>

          4 用戶激活時,根據字符串,查找對應的用戶,然后激活

            // 拿到激活碼
            String sign = request.getParameter("sign");
            
          if (!StrTools.isBlank(sign)) {
              
          // 查找對應激活碼的用戶是否存在
              UserService us = (UserService) Factory.getBean("UserService");
              User u 
          = us.findByEmailSign(sign);
              
          if (u == null{
                out.print(
          "激活碼無效!");
              }
           else if (u.isActived()) {
                out.println(
          "該用戶已經是正式用戶!");
              }
           else {
                
          // 設置已經激活的標志,
                u.setActived(true);
                
          if (us.save(u) != null{
                  out.print(
          "<script>alert('激活注冊成功');self.location='login.jsp';</script>");
                }
           else {
                  out.print(
          "激活失敗");
                }

              }

            }


          -------------------------------------------------------------------------------------------------
          PS:本博客文章,如果沒有注明是有“轉”字樣,屬于本人原創。如果需要轉載,務必注明作者文章的詳細出處地址,否則不允許轉載,多謝合作!
          posted on 2008-10-22 13:22 apple0668 閱讀(1652) 評論(0)  編輯  收藏 所屬分類: java
          主站蜘蛛池模板: 布尔津县| 海城市| 梓潼县| 伊吾县| 金坛市| 桂林市| 高安市| 宝清县| 南皮县| 达拉特旗| 甘德县| 鲁甸县| 桓台县| 馆陶县| 祁阳县| 深水埗区| 峨眉山市| 尚义县| 平湖市| 临邑县| 玉龙| 大同县| 来凤县| 玛曲县| 女性| 山阴县| 漯河市| 阳西县| 巴东县| 梧州市| 凭祥市| 道孚县| 应城市| 耒阳市| 孟州市| 靖江市| 铜山县| 毕节市| 通许县| 板桥市| 怀集县|