在用户注册页面注册成功,用户表中增加用户后,用户要直接去发贴子时,需要得到用户表中的User_ID,注意:此时在同一个事件中(如Button1_Click事件)要传递User_ID的值。
这时不要用
Request.Cookies["User_ID"]
和Response.Cookies["User_ID"].Value,而是
把得到的User_ID
值传给一个变量或一个Label控件,这样传递的User_ID值不会丢失!
conn.Open();
SqlCommand cmd = new SqlCommand("Select User_ID From UsersMag Where User_Name = @User_Name", conn);
cmd.Parameters.Add(new SqlParameter("@User_Name", SqlDbType.VarChar, 50));
cmd.Parameters["@User_Name"].Value = Request.Cookies["User_Name"].Value;
SqlDataReader reader = cmd.ExecuteReader();
if (reader.Read())
{
Lel_UserID.Text = reader["User_ID"].ToString();
reader.Close();
conn.Close();
}
else
{
reader.Close();
conn.Close();
}
//
写入回贴表中
string insertCmd = "INSERT INTO [ReplyList]([Reply_User_ID], [Reply_Content], [Reply_AddDate], [Reply_Topic_ID]) "
+ "VALUES(@Reply_User_ID,@Reply_Content,@Reply_AddDate,@Reply_Topic_ID)";
SqlCommand myCommand = new SqlCommand(insertCmd, conn);
myCommand.Parameters.Add(new SqlParameter("@Reply_User_ID", SqlDbType.VarChar, 50));
myCommand.Parameters["@Reply_User_ID"].Value = Lel_UserID.Text;
myCommand.Parameters.Add(new SqlParameter("@Reply_Content", SqlDbType.VarChar, 500));
myCommand.Parameters["@Reply_Content"].Value = TextBox1.Text;
myCommand.Parameters.Add(new SqlParameter("@Reply_AddDate", SqlDbType.DateTime, 8));
myCommand.Parameters["@Reply_AddDate"].Value = DateTime.Now.ToString(); //
显示详细的日期和时间
//myCommand.Parameters["@tim"].Value = DateTime.Now.ToLongDateString(); //
只显示日期
myCommand.Parameters.Add(new SqlParameter("@Reply_Topic_ID", SqlDbType.VarChar, 11));
myCommand.Parameters["@Reply_Topic_ID"].Value = Lel_TopicID.Text;
conn.Open();
myCommand.ExecuteNonQuery();
Response.Redirect("Content.aspx?addr=" + SqlZr.DelSQLStr(Request.QueryString["addr"].Trim()) + "");
conn.Close();