Discuz!NT 2.5 beta下载测试
类库文档在线查看
Comsenz 招聘信息
首届Discuz!NT 模板大赛圆满结束
著名音乐网站SoGua网、分贝网
采用Discuz!NT搭建社区
FIFA Online2官网论坛使用Discuz!NT
游戏城寨论坛使用Discuz!NT搭建
要灌, 就灌有技术含量的水
一起交流学习ASP.net吧!
17套Discuz!NT界面模板提供下载
Discuz!NT后台截图先睹为快
Discuz!NT文档中心
用户整合说明文档
Discuz!NT亮相微软Tech-Ed 2007
Discuz!NT情景搞笑短片抢先看
1/1页1 跳转到查看:830
发新话题 回复该主题

在页面添加功能

在页面添加功能

怎样在注册页面添加一个姓名和学号的验证,要求姓名和学号同时存在并且相对应。

我下了源码,在UserFactory.cs里添加一个Exist的重载,并在Ajax.cs里调用该函数,并在注册页面使用ajaxRead。请问这样行吗?
重载函数如下:
  /// <summary>
  /// 验证用户真实姓名及学号。
  /// </summary>
  /// <param name="realname">真实姓名</param>
  /// <param name="stuid">学号</param>
  /// <returns>如果相符则返回true, 否则返回false</returns>
  public static bool Exists(string realname,string stuid)
  {
  SqlConnection mySqlConnection=new SqlConnection("Data Source=(local);Database=wyustu;uid=wyustu;pwd=28454138lnkm");
  mySqlConnection.Open();
  SqlCommand objCmd=new SqlCommand();
  objCmd.Connection=mySqlConnection;
  objCmd.CommandText="select count(*) from check where realname=realname AND stuid=stuid";
  return Convert.ToInt32(objCmd.ExecuteScalar()) >= 1;
  mySqlConnection.Close();
  }


Ajax.cs里的CheckUserName函数改为这样:
  public void CheckUserName()
  {
  if (DNTRequest.GetString("username").Trim() == "")
    return;
  else
  {
  string result = "0";
  string tmpUsername = DNTRequest.GetString("username").Trim();
  if (tmpUsername.IndexOf(" ") != -1) 
  {
    //AddErrLine("用户名中不允许包含全角空格符");
    result = "1";
  }
  else if (tmpUsername.IndexOf(" ") != -1) 
  {
    //AddErrLine("用户名中不允许包含空格");
    result = "1";
  }
  else if (tmpUsername.IndexOf(":") != -1) 
  {
    //AddErrLine("用户名中不允许包含冒号");
    result = "1";
  }
  else if (UserFactory.Exists(tmpUsername)) 
  {
    //AddErrLine("该用户名已存在");
    result = "1";
  }
  else if ((!Utils.IsSafeSqlString(tmpUsername)) || (!Utils.IsSafeUserInfoString(tmpUsername)))
  {
    //AddErrLine("用户名中存在非法字符");
    result = "1";
  }
  // 如果用户名属于禁止名单, 或者与负责发送新用户注册欢迎信件的用户名称相同...
  else if (tmpUsername.Trim() ==  PrivateMessageFactory.SystemUserName || ForumUtils.IsBanUsername(tmpUsername, config.Censoruser))
  {
    //AddErrLine("用户名 \"" + tmpUsername + "\" 不允许在本论坛使用, 本论坛不允许用户名使用这些词语: " + config.Censoruser.Replace("\n", ",").Replace("\r", ""));
    result = "1";
  }
  }
  if(DNTRequest.GetString("username").Trim() == "")
    return;
  else
  {
    string result = "0";
    string realname = DNTRequest.GetString("realname").Trim();
    string stuid = DNTRequest.GetString("stuid").Trim();
    if (UserFactory.Exists(realname,stuid)) 
    {
    //AddErrLine("真实姓名与学号相符");
    result = "1";
    }
  }

  System.Text.StringBuilder xmlnode = new System.Text.StringBuilder();
  xmlnode.Append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n");
  xmlnode.Append("<result>");
  xmlnode.Append(result);
  xmlnode.Append("</result>");
  ResponseXML(xmlnode);
  }
上面这样行吗?请高手指教!

另外,我在编译时产生如下错误,怎样解决?我是按帮助文档做的啊,不过对第一点不大理解,第一点是:1. 将您IIS的默认站点路径指向Discuz!NT项目文件夹。(注意确保您配置的IIS站点是以http://localhost访问的)。

用VS2005发布网站时(本地调试)显示如下,共有十几个:
警告 1 “c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\e4192175\e6bbb9dd\App_Web_bpjuofra.2.cs”中的类型“Discuz.ForumPage.Admin.runforumstatic”与“c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\e4192175\e6bbb9dd\assembly\dl3\60f199c3\00a67e9e_bca2c701\Discuz.ForumPage.DLL”中的导入类型“Discuz.ForumPage.Admin.runforumstatic”冲突。将使用“c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\e4192175\e6bbb9dd\App_Web_bpjuofra.2.cs”中的类型。 c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\e4192175\e6bbb9dd\App_Web_bpjuofra.2.cs

请高手帮帮忙啊!!!!!

TOP

 
1/1页1 跳转到
发表新主题 回复该主题