chaozai713 - 2008-6-12 17:23:00
论坛整合的用户登陆的时候,调用WriteUserCookie(),但是无法写入用户登录后的cookie;
页面运行后,不报任何的错误,ForumUtils.WriteUserCookie(uid, -1, config.Passwordkey, 0, -1);
这行也执行过了,但是我在cookies目录下面就是找不到对应的cookies文件.
代码如下:
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using Discuz.Common;
using Discuz.Forum;
using Discuz.Config;
using Discuz.Entity;
public partial class TestLogin : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Discuz.Config.GeneralConfigInfo config = Discuz.Config.GeneralConfigs.GetConfig();
int uid = -1;
uid = Users.CheckPassword("chaozai713","chaozai713", true);
if (uid != -1)
{
ShortUserInfo __userinfo = Users.GetShortUserInfo(uid);
if (__userinfo.Groupid == 8)
{
if (config.Regverify == 1)
{
//这里添加代码提示“请您到您的邮箱中点击激活链接来激活您的帐号"并return退出
}
if (config.Regverify == 2)
{
//这里添加代码提示“您需要等待一些时间, 待系统管理员审核您的帐户后才可登录使用"并return退出
}
}
else
{
//删除之前的错误登录信息
LoginLogs.DeleteLoginLog(DNTRequest.GetIP());
//根据积分公式刷新用户总积分
UserCredits.UpdateUserCredits(uid);
//写入用户登录后的cookie
ForumUtils.WriteUserCookie(uid, -1, config.Passwordkey, 0, -1);
//更新用户最后动作,如不需要可不执行
//OnlineUsers.UpdateAction(olid, UserAction.Login.ActionID, 0, config.Onlinetimeout);
//更新该用户最后访问时间
Users.UpdateUserLastvisit(uid, DNTRequest.GetIP());
Response.Write(config.Passwordkey + "|" + uid);
//登录完毕,此处添加代码提示登录成功并转向到其它页面
//...
}
}
else
{
int errcount = LoginLogs.UpdateLoginLog(DNTRequest.GetIP(), true);
if (errcount > 5)
{
//这里添加代码提示“您已经输入密码5次错误, 请15分钟后再试"并return退出
//...
}
else
{
//AddErrLine("密码或安全提问第" + errcount.ToString() + "次错误, 您最多有5次机会重试");
//这里添加代码提示“密码或安全提问错误"并return退出
//...
}
}
}
}
chaozai713 - 2008-6-13 14:44:00
怎么没有人回答我啊