PDA

View Full Version : سوال: ارسال پیام بین کاربران



fakhravari
دوشنبه 08 اسفند 1390, 02:58 صبح
با سلام.
در مورد ارسال پیام به صورت تک به تک که مشکلی نیست.
برای ارسال بیش از 1 به چه صورت عمل میشود.
برای مثال : مثل برنامه نویس با ; از هم جدا میشوند و میتوانید برای کاربران پیام ارسال کنید.
خوب بعد از جدا سازی کاربران ایا به تعداد کاربران insert صورت میگیرد.
دوستان اگر نمونه کاری دارن و یا راهنمایی ممنون میشم
اگه امکان داره بیشتر با کد باشه:لبخند:
تابع جدا سازی کاربران
protected void Button1_Click(object sender, EventArgs e)
{
string[] SplitTextBox = TextBox1.Text.Split(';');

for (int i = 0; i < SplitTextBox.Length; i++)
{
DropDownList2.Items.Add(SplitTextBox[i].ToString());
}
}

fakhravari
سه شنبه 09 اسفند 1390, 03:17 صبح
ساختارش به این شکل است
تشخیص کاربر سایت

public bool Vaziat;
public void chekname(string test)
{
if (Membership.FindUsersByName(test).Count == 1)
{
Vaziat = false;
}
else
{
Vaziat = true;
}
}


دستور درج پیام گروهی

protected void Button1_Click(object sender, EventArgs e)
{

MShip m = new MShip();
DropDownList1.Items.Clear();
DropDownList2.Items.Clear();

string[] SplitTextBox = txtsender.Text.Split(';');

for (int i = 0; i < SplitTextBox.Length; i++)
{
m.chekname(SplitTextBox[i].ToString());
if (m.Vaziat == false)
{
DropDownList1.Items.Add(SplitTextBox[i].ToString());


m.Create_PM(Page.User.Identity.Name, SplitTextBox[i].ToString().Trim(), txttitle.Text.Trim(),
Time_Date.GetFarsiDate(DateTime.Now, false).Trim(), false, CKEditor1.Text);
System.Threading.Thread.Sleep(1000);

Label1.Text = m.lasterror;
}
else
{
DropDownList2.Items.Add(SplitTextBox[i].ToString());
}
}




}

DropDownList1 = ارسال موفق
DropDownList2 = ارسال ناموفق

public void Create_PM(string UserName, string Sender, string Subject, string Date, bool Vaziat, string Coments)
{
try
{
SqlConnection con = new SqlConnection(ConnectionString);
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = "INSERT INTO Inbox (UserName, Subject, Date, Vaziat, Coments,Sender) VALUES (@UserName, @Subject, @Date, @Vaziat, @Coments,@Sender)";
con.Open();

cmd.Parameters.Add("@UserName", SqlDbType.NVarChar).Value = UserName;
cmd.Parameters.Add("@Sender", SqlDbType.NVarChar).Value = Sender;
cmd.Parameters.Add("@Subject", SqlDbType.NVarChar).Value = Subject;
cmd.Parameters.Add("@Date", SqlDbType.NVarChar).Value = Date;
cmd.Parameters.Add("@Vaziat", SqlDbType.Bit).Value = Vaziat;
cmd.Parameters.Add("@Coments", SqlDbType.NVarChar).Value = Coments;

cmd.ExecuteNonQuery();
con.Close();
lasterror = "با موفقیت ارسال شد";
}
catch
{
lasterror = "error create PM";
}
}

nafasak
دوشنبه 21 فروردین 1391, 14:28 عصر
به نظر من باید برای هر کاربر یک رکورد ثبت بشه،
چون اگه قرار باشه یکی پیام رو از لیست پیام هاش حذف کنه، بقیه دچار مشکل نشن.