ASP CRUD
//UserInfoList.html
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>用户列表页面</title>
<meta charset="utf-8" />
<link href="tableStyle.css" rel="stylesheet" />
<script src="../jquery 3.3.1/jquery-3.3.1.js"></script>
<script>
$(function () {
$('.delCls').click(function () {
if (!confirm('确定要删除该记录吗?')) {
return false;
}
});
});
</script>
</head>
<body>
<a href="AddUserInfo.html">添加用户</a>
<table>
<tr>
<th>ID</th>
<th>名字</th>
<th>密码</th>
<th>详情</th>
<th>删除</th>
<th>编辑</th>
</tr>
$tbody
</table>
</body>
</html>
//tableStyle.css
caption
{
padding: 0 0 5px 0;
width: 700px;
font: italic 11px "Trebuchet MS" , Verdana, Arial, Helvetica, sans-serif;
text-align: right;
}
th
{
font: bold 11px "Trebuchet MS" , Verdana, Arial, Helvetica, sans-serif;
color: white;
border-right: 1px solid #C1DAD7;
border-left: 1px solid #C1DAD7;
border-bottom: 1px solid #C1DAD7;
border-top: 1px solid #C1DAD7;
letter-spacing: 2px;
text-transform: uppercase;
text-align: left;
padding: 6px 6px 6px 12px;
background: #0066AA no-repeat;
}
th.nobg
{
border-top: 0;
border-left: 0;
border-right: 1px solid #C1DAD7;
background: none;
}
td
{
border-left: 1px solid #C1DAD7;
border-right: 1px solid #C1DAD7;
border-bottom: 1px solid #C1DAD7;
background: #fff;
font-size: 11px;
padding: 6px 6px 6px 12px;
color: #4f6b72;
}
td.alt
{
background: #F5FAFA;
color: #797268;
}
th.spec
{
border-left: 1px solid #C1DAD7;
border-top: 0;
background: #fff no-repeat;
font: bold 10px "Trebuchet MS" , Verdana, Arial, Helvetica, sans-serif;
}
th.specalt
{
border-left: 1px solid #C1DAD7;
border-top: 0;
background: #f5fafa no-repeat;
font: bold 10px "Trebuchet MS" , Verdana, Arial, Helvetica, sans-serif;
color: #797268;
}
.span_link
{
cursor:pointer;
color:Black;
}
.tr_Category
{
}
.pageLink
{
color:Blue;
margin-left:2px;
margin-right:2px;
}
.tr_Category_P td
{
background-color:#EEEEFF;
}
//UserInfoList.ashx
<%@ WebHandler Language="C#" Class="UserInfoList" %>
using System;
using System.Web;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using System.Text;
using System.IO;
public class UserInfoList : IHttpHandler {
public void ProcessRequest (HttpContext context) {
context.Response.ContentType = "text/html";
string filePath = context.Request.MapPath("UserInfoList.html");
string fileContent = File.ReadAllText(filePath);
string conString = ConfigurationManager.ConnectionStrings["connStr"].ConnectionString;
using (SqlConnection conn = new SqlConnection(conString))
{
using (SqlDataAdapter adapter = new SqlDataAdapter("select * from UserInfo", conn))
{
DataTable dt = new DataTable();
adapter.Fill(dt);
StringBuilder sb = new StringBuilder();
for (int i = 0; i < dt.Rows.Count; i++)
{
sb.AppendFormat("<tr><td>{0}</td><td>{1}</td><td>{2}</td><td><a href='UserInfoDetail.ashx?UserId={0}'>详情</a></td><td><a href='DeleteUserInfo.ashx?UserId={0}' class='delCls'>删除</a></td><td><a href='EditUserInfo.ashx?UserId={0}&&UserName={1}&&UserPwd={2}'>编辑</a></td></tr>",
dt.Rows[i]["UserId"], dt.Rows[i]["UserName"], dt.Rows[i]["UserPwd"]);
}
fileContent = fileContent.Replace("$tbody", sb.ToString());
context.Response.Write(fileContent);
}
}
}
public bool IsReusable {
get {
return false;
}
}
}
//AddUserInfo.html
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>添加用户</title>
<meta charset="utf-8" />
</head>
<body>
<form method="post" action="AddUserInfo.ashx">
名字<input type="text" name="txtName" value="" />
密码<input type="text" name="txtPwd" value="" />
<input type="submit" name="name" value="提交" />
</form>
</body>
</html>
//AddUserInfo.ashx
<%@ WebHandler Language="C#" Class="AddUserInfo" %>
using System;
using System.Web;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
public class AddUserInfo : IHttpHandler {
public void ProcessRequest (HttpContext context) {
context.Response.ContentType = "text/plain";
string name = context.Request.Form["txtName"];
string pwd = context.Request.Form["txtPwd"];
string conString = ConfigurationManager.ConnectionStrings["connStr"].ConnectionString;
using (SqlConnection con = new SqlConnection(conString))
{
string sql = "insert into UserInfo values(@UserName,@UserPwd)";
using (SqlCommand cmd = new SqlCommand(sql, con))
{
con.Open();
cmd.Parameters.Add(new SqlParameter("@UserName",name));
cmd.Parameters.Add(new SqlParameter("@UserPwd",pwd));
if (cmd.ExecuteNonQuery()>0)
{
context.Response.Redirect("UserInfoList.ashx");
}
else
{
context.Response.Redirect("Error.html");
}
}
}
}
public bool IsReusable {
get {
return false;
}
}
}
//UserInfoDetail.html
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<meta charset="utf-8" />
</head>
<body>
用户名:$name<br />
密码:$pwd<br />
</body>
</html>
//UserInfoDetail.ashx
<%@ WebHandler Language="C#" Class="UserInfoDetail" %>
using System;
using System.Web;
using System.Text;
using System.IO;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
public class UserInfoDetail : IHttpHandler {
public void ProcessRequest (HttpContext context) {
context.Response.ContentType = "text/html";
string filePath = context.Request.MapPath("UserInfoDetail.html");
string fileContent = File.ReadAllText(filePath);
int id;
if (int.TryParse(context.Request.QueryString["UserId"],out id))
{
string connString = ConfigurationManager.ConnectionStrings["connStr"].ConnectionString;
using (SqlConnection conn = new SqlConnection(connString))
{
using (SqlDataAdapter adapter = new SqlDataAdapter("select * from UserInfo where UserId=@UserId", conn))
{
adapter.SelectCommand.Parameters.Add(new SqlParameter("@UserId", id));
DataTable dt = new DataTable();
adapter.Fill(dt);
string name = dt.Rows[0]["UserName"].ToString();
string pwd = dt.Rows[0]["UserPwd"].ToString();
fileContent = fileContent.Replace("$name", name).Replace("$pwd", pwd);
context.Response.Write(fileContent);
}
}
}
}
public bool IsReusable {
get {
return false;
}
}
}
//DeleteUserInfo.ashx
<%@ WebHandler Language="C#" Class="DeleteUserInfo" %>
using System;
using System.Web;
using System.Data;
using System.Data.SqlClient;
public class DeleteUserInfo : IHttpHandler {
public void ProcessRequest (HttpContext context) {
context.Response.ContentType = "text/html";
int id = Convert.ToInt32(context.Request.QueryString["UserId"]);
string connString = System.Configuration.ConfigurationManager.ConnectionStrings["connStr"].ConnectionString;
using (SqlConnection conn = new SqlConnection(connString))
{
string sql = "delete from UserInfo where UserId=@UserId";
using (SqlCommand cmd = new SqlCommand(sql, conn))
{
conn.Open();
cmd.Parameters.Add(new SqlParameter("@UserId", id));
if (cmd.ExecuteNonQuery()>0)
{
context.Response.Redirect("UserInfoList.ashx");
}
else
{
context.Response.Redirect("Error.html");
}
}
}
}
public bool IsReusable {
get {
return false;
}
}
}
//EditUserInfo.html
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<meta charset="utf-8" />
</head>
<body>
<form action="UpdateUserInfo.ashx" method="post">
<input type="hidden" name="txtId" value="$id" />
用户名:<input type="text" name="txtName" value="$name" /><br />
密码:<input type="text" name="txtPwd" value="$pwd" /><br />
<input type="submit" name="name" value="修改" />
</form>
</body>
</html>
//EditUserInfo.ashx
<%@ WebHandler Language="C#" Class="EditUserInfo" %>
using System;
using System.Web;
using System.Data;
using System.Data.SqlClient;
public class EditUserInfo : IHttpHandler {
public void ProcessRequest (HttpContext context) {
context.Response.ContentType = "text/html";
string id = context.Request.QueryString["UserId"];
string name = context.Request.QueryString["UserName"];
string pwd = context.Request.QueryString["UserPwd"];
string filePath = context.Request.MapPath("EditUserInfo.html");
string fileContent = System.IO.File.ReadAllText(filePath);
fileContent = fileContent.Replace("$id", id).Replace("$name", name).Replace("$pwd", pwd);
context.Response.Write(fileContent);
}
public bool IsReusable {
get {
return false;
}
}
}
//UpdateUserInfo.ashx
<%@ WebHandler Language="C#" Class="UpdateUserInfo" %>
using System;
using System.Web;
using System.Data;
using System.Data.SqlClient;
public class UpdateUserInfo : IHttpHandler {
public void ProcessRequest (HttpContext context) {
context.Response.ContentType = "text/plain";
int id = Convert.ToInt32(context.Request.Form["txtId"]);
string newName = context.Request.Form["txtName"];
string newPwd = context.Request.Form["txtPwd"];
string connString = System.Configuration.ConfigurationManager.ConnectionStrings["connStr"].ConnectionString;
using (SqlConnection conn = new SqlConnection(connString))
{
string sql = "update UserInfo set UserName=@UserName,UserPwd=@UserPwd where UserId=@UserId";
using (SqlCommand cmd = new SqlCommand(sql, conn))
{
conn.Open();
cmd.Parameters.Add(new SqlParameter("@UserName", newName));
cmd.Parameters.Add(new SqlParameter("@UserPwd", newPwd));
cmd.Parameters.Add(new SqlParameter("@UserId", id));
if (cmd.ExecuteNonQuery()>0)
{
context.Response.Redirect("UserInfoList.ashx");
}
else
{
context.Response.Redirect("Error.html");
}
}
}
}
public bool IsReusable {
get {
return false;
}
}
}
//Error.html
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<meta charset="utf-8" />
</head>
<body>
服务器忙啊啊啊!!
<span style="font-size:20px;color:red;font-weight:bolder">5</span>秒钟以后自动跳转到<a href="UserInfoList.ashx">列表页面</a>
</body>
</html>
最新文章
- linux下 nginx、php-fpm、mysql 开机自启动
- ux.plup.File plupload 集成 ux.plup.FileLis 批量上传预览
- 没有注册类 (异常来自 HRESULT:0x80040154 (REGDB_E_CLASSNOTREG))
- IE6中奇数宽高的BUG
- 《sift算法详解》阅读笔记
- JPA简单知识
- testng 注解
- Java基础知识强化04:判断101~200之间有多少素数
- php随笔5-thinkphp OA系统 人力资源管理
- Codeforces Round #270(利用prim算法)
- SuperWebClient -一个基于CURL的.NET HTTP/HTTPS模拟神组件(1)
- 大话python面向对象
- padding属性很有用
- gcc and g++ 常用参数解释
- nginx与location语法详解
- HDU 4859 海岸线(最小割+最大独立点权变形)
- pyspark数据准备
- extjs_08_界面布局
- Item is not readable svn: 条目不可读
- SQL日期和时间函数
热门文章
- Android JNI编程(四)——C语言多级指针、数组取值、从控制台输入数组
- ios app初始化和数据迁移的设计思路
- [React] Pass Data To Event Handlers with Partial Function Application
- [Ramda] Eliminate Function Arguments (Point-Free Style) with Ramda&#39;s Converge
- Local database deployment problems and fixtures
- SpringMVC拦截器-路径语法-略坑
- 将jar安装到本地mvn仓库
- Maven学习笔记(六):生命周期与插件
- Java泛型详解:<;T>;和Class<;T>;的使用。泛型类,泛型方法的详细使用实例
- How to provide highlighting with Spring data elasticsearch