public function setSessionAndCookie($uid, $uname, $email, $remember = false) { $_SESSION['mid'] = $uid; $_SESSION['uname'] = $uname; $remember ? cookie('LOGGED_USER', jiami('thinksns.' . $uid), 3600 * 24 * 365) : cookie('LOGGED_USER', jiami('thinksns.' . $uid), 3600 * 2); }
/** * jihuo * * @param mixed $uid * @param mixed $email * @return void */ public function jihuo($uid, $email) { //发送激活email $jh_url = "http://" . $_SERVER['HTTP_HOST'] . __APP__ . "/Index/active/code/" . jiami($uid) . "/new/" . $email; //$subject = iconv("utf-8","gbk","ThinkSNS给您发来的注册激活邮件。"); $subject = "ThinkSNS给您发来的修改账号激活邮件。"; $body = "尊敬的先生(女士),您好!<p>请点击此链接即可激活您的帐户:<p><a href='" . $jh_url . "'>激活ThinkSNS的新账号</a>"; $sr = send_email($email, $subject, $body); if ($sr) { $this->redirect("/Account/account/t/1"); } else { $this->error("发送激活邮件失败!"); } }
/** * 注册用户的登陆状态 (即: 注册cookie + 注册session + 记录登陆信息) * * @param array $user * @param boolean $is_remeber_me */ public function registerLogin(array $user, $is_remeber_me = false, $password = null) { if (empty($user)) { return false; } if (isset($password)) { $result = $this->ucLogin($user['email'], $password); if (!$result['user']) { return false; } $user = $result['user']; } if ($user && UC_SYNC) { $uc_user = ts_get_ucenter_user_ref($user['uid']); echo $uc_user ? uc_user_synlogin($uc_user['uc_uid']) : ''; } $_SESSION['mid'] = $user['uid']; $_SESSION['uname'] = $user['uname']; if (!$this->getCookieUid()) { $expire = $is_remeber_me ? 3600 * 24 * 365 : 3600 * 1; cookie('LOGGED_USER', jiami("thinksns.{$user['uid']}"), $expire); // 登陆积分 X('Credit')->setUserCredit($uid, 'user_login'); } $this->recordLogin($user['uid']); return $result; }
public function userInvite() { $toEmail = $_POST[userInviteEmail]; $toEmail = str_replace(",", ',', $toEmail); $toEmailArray = explode(",", $toEmail); $emailCount = count($toEmailArray); $code = jiami($this->mid); foreach ($toEmailArray as $k => $toEmail) { $toEmail = trim($toEmail); $dao = D('UserInvite'); $dao->create(); $dao->userId = $this->mid; $dao->module = 'Register'; $dao->status = '0'; $dao->add(); } $result = $this->sendInviteMail($toEmailArray, $code); header('location:' . __APP__ . '/Friend/invite/callback/' . $result); }
/** * jihuo * * @param mixed $uid * @param mixed $email * @param mixed $re * @return void */ public function jihuo($uid, $email, $inviteCode = '', $re = false) { //发送激活email //从配置中取出配置内容 $opts = $this->api->option_get(); $option['smtp'] = $opts['email_stmp']; $option['port'] = $opts['email_port']; $option['username'] = $opts['email_address']; $option['password'] = $opts['email_password']; $option['site_name'] = $opts['site_name']; $jh_url = "http://" . $_SERVER['HTTP_HOST'] . __APP__ . "/Index/active/code/" . jiami($uid); if ($inviteCode) { $jh_url .= "/inviteCode/{$inviteCode}"; } //$subject = iconv("utf-8","gbk","ThinkSNS给您发来的注册激活邮件。"); $subject = str_replace('{SITE_NAME}', $opts['site_name'], $opts['email_subject']); //解析模板标签 $patterns = array("/{SEX}/", "/{SITE_NAME}/", "/{URL}/"); //获得性别判断 $uid = abs(intval($uid)); $info = D("User")->field('sex')->find($uid); $sex = explode("-", $info['sex']); $r_sex = $sex[0] ? "先生" : "女士"; $replacements = array($r_sex, $opts['sit_name'], $jh_url); $body = stripslashes(preg_replace($patterns, $replacements, $opts['email_body'])); $sr = send_email($email, $subject, $body, "HTML", $option); if ($sr) { //显示待激活页面 $email_info = explode("@", $email); switch ($email_info[1]) { case "qq.com": $email_url = "mail.qq.com"; break; default: $email_url = "www." . $email_info[1]; } $this->assign("email", $email); $this->assign("email_url", $email_url); $this->assign("uid", $uid); $this->assign("re", $re); $this->display("jihuo"); } else { $this->error("发送激活邮件失败!"); } }
public function setJsToken($key = null) { $token = jiami(microtime(TRUE)); $type = C('OTHER_TOKEN'); Session::set($type, $token); //dump($token); }