时间:2016-02-15 22:04 来源: 我爱IT技术网 作者:佚名
欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【Discuz .net版本中的短消息系统第1/2页】,下面是详细的讲解!
Discuz .net版本中的短消息系统第1/2页
在Discuz中,消息可以分为公用消息(管理后台 --> 其他 -->公共消息管理)如下:
另外还有批量短消息发送(用户管理):
private void BatchSendSM_Click(object sender, EventArgs e)
{
#region 批量短消息发送
if (this.CheckCookie())
{
string groupidlist=Usergroups.GetSelectString(",");
if (groupidlist=="")
{
base.RegisterStartupScript( "", "<script>alert('请您先选取相关的用户组,再点击提交按钮');</script>");
return;
}
int percount=10; //每多少记录为一次等待
int count=0; //当前记录数
// GetUserNameListByGroupid为取得选中的用户组的所有用户的id和用户名
foreach (DataRow dr in DatabaseProvider.GetInstance().GetUserNameListByGroupid(groupidlist).Rows)
{
DatabaseProvider.GetInstance().SendPMToUser(username.Replace("'", "''"), userid, dr["username"].ToString().Replace("'", "''"), Convert.ToInt32(dr["uid"].ToString()), int.Parse(folder.SelectedValue), subject.Text, Convert.ToDateTime(postdatetime.Text), message.Text);
if (count >=percount)
{
Thread.Sleep(3500);
count=0;
}
count++;
}
base.RegisterStartupScript( "PAGE", "window.location.href='global_sendSMtogroup.aspx';");
}
#endregion
}
//SendPMToUser函数如下:
public void SendPMToUser(string msgfrom, int msgfromid, string msgto, int msgtoid, int folder, string subject, DateTime postdatetime, string message)
{
DbParameter[] parms=
{
DbHelper.MakeInParam("@msgfrom", (DbType)SqlDbType.NVarChar,50, msgfrom),
DbHelper.MakeInParam("@msgfromid", (DbType)SqlDbType.Int, 4, msgfromid),
DbHelper.MakeInParam("@msgto", (DbType)SqlDbType.NVarChar,50, msgto),
DbHelper.MakeInParam("@msgtoid", (DbType)SqlDbType.Int, 4, msgtoid),
DbHelper.MakeInParam("@folder", (DbType)SqlDbType.SmallInt, 2, folder),
DbHelper.MakeInParam("@subject", (DbType)SqlDbType.NVarChar,60, subject),
DbHelper.MakeInParam("@postdatetime", (DbType)SqlDbType.DateTime,8, postdatetime),
DbHelper.MakeInParam("@message",(DbType)SqlDbType.NText, 0,message)
};
string sql="INSERT INTO [" + BaseConfigs.GetTablePrefix + "pms] (msgfrom,msgfromid,msgto,msgtoid,folder,new,subject,postdatetime,message) " +
"VALUES (@msgfrom,@msgfromid,@msgto,@msgtoid,@folder,1,@subject,@postdatetime,@message)";
DbHelper.ExecuteNonQuery(CommandType.Text, sql, parms);
sql="UPDATE [" + BaseConfigs.GetTablePrefix + "users] SET [newpmcount]=[newpmcount]+1 WHERE [uid]=@msgtoid";
DbHelper.ExecuteNonQuery(CommandType.Text, sql, parms);
}
关于Discuz .net版本中的短消息系统第1/2页的用户互动如下:
相关问题:
答: >>详细
相关问题:
答: >>详细
相关问题:
答: >>详细
- 【asp】asp.net url重写浅谈-net-url重写
- 【DataSet】DataSet、DataTable、DataRow区别详解
- 【创建】ASP.NET Web API教程 创建域模型的方法详
- 【asp】asp.net ubb使用代码-net-ubb使用
- 【页面打印】关于ASP.NET页面打印技术的常用方法
- 【MVC5】MVC 5 第一章 创建MVC 5 web应用程序-net
- 【MVC】一个简单MVC5 + EF6示例分享-EF6实例-MVC5
- 【服务器】asp.net页面状态管理cookie和服务器状
- 【asp】asp.net更新指定记录的方法-net--更新-指
- 如何取消.net后台线程的执行
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
