📄 createexam.aspx.cs
字号:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace examonline
{
/// <summary>
/// createexam 的摘要说明。
/// </summary>
public partial class createexam : System.Web.UI.Page
{
protected void Page_Load(object sender, System.EventArgs e)
{
if((bool)Session["IsLogined"]==false)
{
Response.Redirect("index.aspx");
}
lbTishi.Text=(string)Session["info"];
Session["info"]="";
if(Request.QueryString["step"]=="2")
{
tbStep1.Visible=false;
TextBox txtTitle=new TextBox();
TextBox txtQuestion=new TextBox();
TextBox txtSolution=new TextBox();
DropDownList ddlStyle=new DropDownList();
ListItem item1=new ListItem("选择题","1");
ddlStyle.Items.Add(item1);
ListItem item2=new ListItem("填空题","2");
ddlStyle.Items.Add(item2);
ListItem item3=new ListItem("问答题","3");
ddlStyle.Items.Add(item3);
txtTitle.Width=350;
txtQuestion.TextMode=TextBoxMode.MultiLine;
txtQuestion.Width=350;
txtQuestion.Height=300;
txtSolution.Width=350;
tbStep2.Rows[1].Cells[1].Controls.Add(ddlStyle);
tbStep2.Rows[2].Cells[1].Controls.Add(txtTitle);
tbStep2.Rows[3].Cells[1].Controls.Add(txtQuestion);
tbStep2.Rows[4].Cells[1].Controls.Add(txtSolution);
Button btnOkAndNext=new Button();
btnOkAndNext.Click+=new System.EventHandler(this.btnOkAndNext_Click);
btnOkAndNext.Text="提交该试题并开始下一题";
tbStep2.Rows[5].Cells[0].Controls.Add(btnOkAndNext);
Button btnComplete=new Button();
btnComplete.Click+=new System.EventHandler(this.btnComplete_Click);
btnComplete.Text="已全部完成";
tbStep2.Rows[5].Cells[0].Controls.Add(btnComplete);
}
else
{
tbStep2.Visible=false;
TextBox txtTitle=new TextBox();
TextBox txtTesttime=new TextBox();
TextBox txtHowtime=new TextBox();
TextBox txtTester=new TextBox();
TextBox txtTeacher=new TextBox();
txtTitle.Width=350;
txtTesttime.Width=350;
txtHowtime.Width=350;
txtTester.Width=350;
txtTeacher.Width=350;
tbStep1.Rows[1].Cells[1].Controls.Add(txtTitle);
tbStep1.Rows[2].Cells[1].Controls.Add(txtTesttime);
tbStep1.Rows[3].Cells[1].Controls.Add(txtHowtime);
tbStep1.Rows[4].Cells[1].Controls.Add(txtTester);
tbStep1.Rows[5].Cells[1].Controls.Add(txtTeacher);
Button btnNextstep=new Button();
btnNextstep.Click+=new System.EventHandler(this.btnNextstep_Click);
btnNextstep.Text="提交以上信息并开始录入试题";
tbStep1.Rows[6].Cells[0].Controls.Add(btnNextstep);
}
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
}
#endregion
private void btnNextstep_Click(object sender, System.EventArgs e)
{
TextBox title=(TextBox)tbStep1.Rows[1].Cells[1].Controls[0];
TextBox Testtime=(TextBox)tbStep1.Rows[2].Cells[1].Controls[0];
TextBox Howtime=(TextBox)tbStep1.Rows[3].Cells[1].Controls[0];
TextBox Tester=(TextBox)tbStep1.Rows[4].Cells[1].Controls[0];
TextBox Teacher=(TextBox)tbStep1.Rows[5].Cells[1].Controls[0];
if(title.Text=="")
{
Session["info"]="试卷名不能为空!";
Response.Redirect("createexam.aspx?step=1");
Response.End();
}
string temp="";
SqlConnection cn =new SqlConnection("server=(local);uid=sa;pwd=51aspx;database=examonline");
string sql = "insert into exam (exam_title,create_time,test_time,many_time,tester,teacher) values ('"+HTMLEncode(title.Text)+"','"+DateTime.Now+"','"+Testtime.Text+"','"+HTMLEncode(Howtime.Text)+"','"+HTMLEncode(Tester.Text)+"','"+HTMLEncode(Teacher.Text)+"') SELECT CAST(scope_identity() AS int)";
SqlCommand cmd = new SqlCommand(sql,cn);
try
{
cn.Open();
temp=cmd.ExecuteScalar().ToString();
}
catch(SqlException ex)
{
Session["info"]="数据库错误:" + ex.Message.ToString();
}
finally
{
cn.Close();
}
if(temp!="")
{
Response.Redirect("createexam.aspx?step=2&id="+temp);
}
else
{
Session["info"]="出错了,请确认你输入的数据格式正确!";
Response.Redirect("createexam.aspx?step=1");
Response.End();
}
}
private void btnOkAndNext_Click(object sender, System.EventArgs e)
{
DropDownList style=(DropDownList)tbStep2.Rows[1].Cells[1].Controls[0];
TextBox title=(TextBox)tbStep2.Rows[2].Cells[1].Controls[0];
TextBox question=(TextBox)tbStep2.Rows[3].Cells[1].Controls[0];
TextBox solution=(TextBox)tbStep2.Rows[4].Cells[1].Controls[0];
if(question.Text==""||style.SelectedValue=="")
{
Session["info"]="带<font color="red">*</font>的不能为空!";
Response.Redirect("createexam.aspx?step=2&id="+Request.QueryString["id"]);
Response.End();
}
string sql="";
switch(style.SelectedValue)
{
case "1":
sql = "insert into selectItems (exam_id,title,createTime,question,solution) values ('"+Request.QueryString["id"]+"','"+HTMLEncode(title.Text)+"','"+DateTime.Now+"','"+HTMLEncode(question.Text)+"','"+HTMLEncode(solution.Text)+"')";
break;
case "2":
sql = "insert into fillblank (exam_id,title,createTime,question,solution) values ('"+Request.QueryString["id"]+"','"+HTMLEncode(title.Text)+"','"+DateTime.Now+"','"+HTMLEncode(question.Text)+"','"+HTMLEncode(solution.Text)+"')";
break;
case "3":
sql = "insert into essay (exam_id,title,createTime,question,solution) values ('"+Request.QueryString["id"]+"','"+HTMLEncode(title.Text)+"','"+DateTime.Now+"','"+HTMLEncode(question.Text)+"','"+HTMLEncode(solution.Text)+"')";
break;
default:
Session["info"]="出错了!";
break;
}
SqlConnection cn =new SqlConnection("server=(local);uid=sa;pwd=51aspx;database=examonline");
SqlCommand cmd = new SqlCommand(sql,cn);
try
{
cn.Open();
cmd.ExecuteNonQuery();
}
catch(SqlException ex)
{
Session["info"]="数据库错误:" + ex.Message.ToString();
}
finally
{
cn.Close();
}
Response.Redirect("createexam.aspx?step=2&id="+Request.QueryString["id"]);
}
private void btnComplete_Click(object sender, System.EventArgs e)
{
Response.Redirect("showexam.aspx");
}
private string HTMLEncode(string fString)
{
if(fString!=null)
{
fString = fString.Replace( ">", ">");
fString = fString.Replace("<", "<");
fString = fString.Replace( " ", " ");
fString = fString.Replace( "\"", """);
fString = fString.Replace( "\r", "");
fString = fString.Replace( "\n" + "\n", "</P><P> ");
fString = fString.Replace( "\n", "<BR> ");
return (fString);
}
else
{
return("");
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -