在淘宝上做的网站要转出,wordpress数据库查询优化,成都各公司网站,什么是网络营销?前言 紧接上篇-基于C#开发web网页管理系统模板流程-登录界面和主界面_c#的网页编程-CSDN博客 已经完成了登录界面和主界面#xff0c;本篇将完善主界面的管理员录入和编辑功能#xff0c;事实上管理员录入和编辑的设计套路适用于所有静态表的录入和编辑 首先还是介绍一下… 前言 紧接上篇-基于C#开发web网页管理系统模板流程-登录界面和主界面_c#的网页编程-CSDN博客 已经完成了登录界面和主界面本篇将完善主界面的管理员录入和编辑功能事实上管理员录入和编辑的设计套路适用于所有静态表的录入和编辑 首先还是介绍一下本项目将要实现的功能 一管理员-录入 点击菜单中的管理员-录入网页给出输入信息的界面用户输入完信息后判断其合法性 如果不合法提示重新输入合法则保留信息到本地数据库 二管理员--编辑 一新建gly文件夹
在admin文件下再新建一个gly文件夹以方便脚本管理我们将把实现管理员录入和编辑功能的脚本放在这个文件夹下以此类推当你实现菜单的其它选项的功能时也应采用这个思路 二设计管理员-录入界面
注部分操作与上一篇的基本雷同因此省去不必要的图片操作自行根据文字提示完成操作
一添加设计工作台
在gly文件下【右键】-【添加新建项】创建一个【包含母版页的Web窗体】将其命名为glyadd.aspx 点击添加后再弹出的【选择母版页】窗口中选择唯一一个母版页Site.Master 二插入与调整表格
在刚刚新建的文件中点击右下角的【设计】在紫色窗口中键入几个回车方便操作 顶部点击【表】-插入表格 重点该表格的列数为2行数你数据库中管理员表的字段数2 例如我的管理员表有6个字段因此设置该表为862行 三修改表格背景色
这一步在上一篇的标题【三.一.3】已经详细讲过要重点注意的问题还是表格的选中问题要点一下表头才能全选表格而不是只选中表格中的4行两者是有区别的如果全选表格的话表的边框会加粗、而且右边的属性栏会有【TABLE】的标签而不是【TD】之类的标签如果不正确的全选表格对表格的一些整体操作会只作用于部分单元格从而导致最终显示结果乱版 确认全选表格后右边下滑找到【style】属性如果右边没有属性窗口对表格右键可以找到点击该属性右边的三个小点会弹出修改样式窗口点击【背景】在【background-color】中选择想要的背景色点击确定表格颜色成功修改 四添加提示用户输入的信息
本步操作就是美化以下录入界面给用户提示在哪里输入信息合并单元格、居中、放大字体、加粗字体等操作不再赘述顺便调整一下表格的大小
读者在设计时应符合自己对用户的预期输入并贴合数据库中字段需要录入的数据 五添加控件
给表格右边添加相应的文本框等录入控件这样才能接收用户的输入
我们需要用到如下图红框中的这三个控件
工具箱点左边的【工具箱】按钮展开 这里我添加了5个【TextBox】、2个【RadioButton】、2个【Button】等控件读者请根据实际需要添加合适的控件 1性别单选按钮
这里重点解释一下【RadioButton】的作用因为需要录入性别信息性别只有两种选择【RadioButton】则能实现这一操作
点击控件后在属性栏中的【Text】修改他们的名字分别为男、女再将这两个按钮的属性中的【GroupName】修改为同一名字确保两个按钮在同一分组这样才能实现非男即女的按钮单选 2日历输入生日
然后再解释一下怎么设计成以日历的形式让用户快速输入日期信息
单击输入日期的文本框控件在属性中找到【TextMode】属性修改为【Date】如果你需要用户的输入精确到时分秒也可以修改为【DateTime】 3两个按钮改名
改一下两个【Button】控件的名字方便用户明白它们的功能也是在属性栏中的【Text】修改 4为录入按钮和重置按钮添加脚本以实现其功能
双击录入按钮将下面的脚本复制到弹出的文件【glyadd.aspx.cs】中并【CtrlS】快捷键保存脚本的功能已经在注释中做出了详细解释请仔细查看
注这整个脚本包含录入和重置这两个按钮的脚本
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.Odbc; //ODBC命名空间namespace ckgl.admin.gly
{public partial class glyadd : System.Web.UI.Page{protected void Button1_Click(object sender, EventArgs e)//录入按钮脚本{//根据你实际的设计进行对应的输入内容合法判断if (TextBox1.Text || TextBox2.Text ){Response.Write(script languagejavascript alert(管理员编号或密码不得为空);/script);return;}if (TextBox3.Text ){Response.Write(script languagejavascript alert(管理员姓名不得为空);/script);return;}if (RadioButton1.Checked false RadioButton2.Checked false){Response.Write(script languagejavascript alert(请选择管理员性别);/script);return;}if (TextBox4.Text || TextBox5.Text ){Response.Write(script languagejavascript alert(管理员生日或电话不得为空);/script);return;}if (TextBox1.Text.Length ! 6){Response.Write(script languagejavascript alert(管理员编号为六位长度);/script);return;}//创建连接对象、打开数据库OdbcConnection con DB.Lianjie();con.Open();//编写sql语句查询重复的管理员编号string sql1 select * from glyb where gno TextBox1.Text ;OdbcCommand mycommand1 new OdbcCommand(sql1, con);OdbcDataReader sdr mycommand1.ExecuteReader();if (sdr.Read())//如果有重复给出提示信息{Response.Write(script languagejavascript alert(管理员编号已存在请更换);/script);return;}//管理员录入对于性别信息需要特殊处理成男、女文本string xb ;if (RadioButton1.Checked true)xb 男;if (RadioButton2.Checked true)xb 女;string sql2 insert into glyb values( TextBox1.Text , TextBox2.Text , TextBox3.Text , xb , ;sql2 TextBox4.Text , TextBox5.Text ) ;OdbcCommand mycommand2 new OdbcCommand(sql2, con);// Response.Write(sql2);//调试用正常不用这两行// return;mycommand2.ExecuteNonQuery(); //用于录入修改删除时Response.Write(script languagejavascript alert(录入成功);/script);con.Close(); //关闭数据库}protected void Button2_Click(object sender, EventArgs e)//重置按钮脚本{//重置的思想很简单直接把所有文本框置为空字符串所有选择按钮置为false即未选状态//我这里有5个文本框依次置空TextBox1.Text TextBox2.Text TextBox3.Text TextBox4.Text TextBox5.Text ;//两个选择性别的按钮置为falseRadioButton1.Checked RadioButton2.Checked false;}}
} 三设计管理员-编辑界面
一添加设计工作台
在gly文件下【右键】-【添加新建项】创建一个【包含母版页的Web窗体】将其命名为glyedit.aspx 点击添加后再弹出的【选择母版页】窗口中选择唯一一个母版页Site.Master 二插入与调整表格 管理员编辑界面的表格的列数固定为3行数需要根据你自己管理系统需要查询的字段数来决定行数你需要查询的字段数2 例如在我的管理员表中我需要查询的字段只有编号、姓名、电话这三个其它字段基本没有查询的必要密码不能展示给其它用户、性别要么查男要么查女查出来很多记录没有意义生日也属于隐私没必要查总之根据你自己需要用户能够查询到的字段来设计即可 因此设置该表为532行 三修改表格背景色
四添加提示用户输入的信息
五添加控件
以上这四块内容基本是重复的套路操作因此省去大量篇幅如果忘了操作则重看本篇标题【二】的2345都是一样的套路自由发挥设计即可参考下图 完成以上操作之后我们还要在上图绿框部分的大单元格处添加一个用于显示数据的控件点击选中它之后在【工具箱】-【数据】中找到【GridView】双击后添加 六配置odbc数据源
本步操作用于管理系统能够连接到数据源从而显示查询结果已经在上一篇基于C#开发web网页管理系统模板流程-登录界面和主界面-CSDN博客的标题【一.三.2】处做过详细演示如果你还没建立odbc数据源连接请自行跳转查看教程 按下图操作点击【新建数据源】 按如下图操作创建数据源 点完确定后回到这个窗口点【下一步】下一个窗口这个窗口的截图我省略了再点下一步 配置Select语句在这里选择你数据库中的管理员表 注如果在本步操作你无法选择【指定来自表或视图的列】这个选项从而导致你无法选择你的管理员表错误原因在于你创建的odbc数据源未指定你的数据库即下图绿框部分中红字特地强调的内容你没有做此时你必须重新创建数据源 严格按照 上一篇基于C#开发web网页管理系统模板流程-登录界面和主界面-CSDN博客的标题【一.三.2】所说的做且新的数据源不能和原来错误的数据源同名除非你删除原来错误的数据源但如果你是5.1版本的odbc可能会发现删除不了如果你想删除参考本篇-odbc用户dsn点删除点配置没反应个人解决经验-CSDN博客 然后选【指定自定义SQL语句或存储过程(S)】再点下一步 接下来我们要创建SELECT、UPDATE、DELETE这三部分的SQL语句 SELECT的SQL语句就是【select * from 管理员表名】这样的形式 UPDATE的SQL语句是【update 管理员表名 set 字段1? ,字段2?,字段3?,... where 管理员编号字段?】的形式 DELETE的SQL语句是【delete from 管理员表名 where 管理员编号字段?】 你需要确认自己管理员表名及其中的字段来对这3条语句进行适当修改很简单的但要求你仔细确认字段名是否正确否则会导致后续的查询bug你看看就知道了参考下图 做完三条SQL编写的工作后继续点下一步在这个【测试查询】的窗口中也可以点测试查询(T)验证一下SELECT语句其它更新、删除语句无法在此处验证确认无误后点完成实在后期遇到bug也没多大关系可以修改配置的 此时可以发现管理员表中的字段已经被绑定到控件中了 七设计编辑和删除功能
展开控件菜单将【启用分页】、【启用编辑】、【启用删除】勾选上此时可能需要你调整一下表格大小以适应这些内容 1设置分页
选中GridView控件后在属性栏中的【PageSize】处可以修改每页显示的记录数可以根据自己设计需求进行设置 2将编辑、删除功能置于查询结果后方
一般来说习惯将编辑、删除功能置于查询结果后方当然这也根据你自己喜好去设置 但是将【CommandField】列设置为TemplateField模板列是必须进行的操作这关系到下文设置删除提示的操作 3编辑和删除功能测试
在编辑界面直接运行我们来测试一下编辑和删除功能这一步可能产生的bug会非常多博主也是被硬控了一天半多的时间
运行来到编辑界面这里我随便准备了4条数据 点击第四条数据的删除成功删除 点击第一条的编辑功能修改其gname的值 点更新成功修改 读者需要确保自己的编辑和删除功能能够实现上文所描述的如果无法实现提供以下可能的处理措施—— ①检查自己在本篇标题【三.6】编写的三条SQL语句是否正确语法、字段名、关键字之间是否空格隔开等 ②点击删除功能时弹出如下错误 解决方法是再点开配置数据源在【配置Select语句】的窗口选择【高级】将【使用开放式开发(O)】这个选项勾选最后点确定 注最好再去检查一下那三条自定义SQL语句是否错误有可能会被系统修改成默认值需要你手动再改回来 ③点击编辑功能修改值后点更新但是数据没有被修改 解决方法是点击【编辑列】确认你的【管理员编号】这里我是gno字段的属性【ReadOnly】是否为True因为前文已经说过这个字段是不能被更改的所以要设置为只可读 补充必看4给删除功能添加确认删除提示
为避免用户误删记录必须给删除功能添加对应的确认提示
点击右下角的【源】在模板列的后台代码即绿色框起来的部分如果没有绿框内的代码说明你为进行本篇标题【三.7.2】处内容的操作中找到如下图红色下划线所在行的删除按钮后台代码添加如红色下划线所示的代码在【Text删除】的后面
OnClientClickreturn confirm(真的要删除吗) 测试功能
做完修改后注意保存运行后来到管理员编辑界面对任意一条记录进行删除操作出现如下确认删除的提示证明功能无误 5为录入按钮和重置按钮添加脚本以实现其功能
双击录入按钮将下面的脚本复制到弹出的文件【glyedit.aspx.cs】中并【CtrlS】快捷键保存脚本的功能已经在注释中做出了详细解释请仔细查看
注这整个脚本包含录入和重置这两个按钮的脚本
using System;
using System.Collections.Generic;
using System.Data.Odbc;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;namespace ckgl.admin.gly
{public partial class glyedit : System.Web.UI.Page{protected void Button1_Click(object sender, EventArgs e){OdbcConnection con DB.Lianjie();con.Open();string sql select * from glyb where ;if (TextBox1.Text ! )sql gno TextBox1.Text and ;if (TextBox2.Text ! )sql gname TextBox2.Text and ;if (TextBox3.Text ! )sql gtele TextBox3.Text and ;sql 11 ; //复合查询关口语句这样的设计代码的思路是如果三个文本框都为空即用户未输入任何匹配信息那么查询结果就是所有记录OdbcCommand mycommand1 new OdbcCommand(sql, con);OdbcDataReader sdr mycommand1.ExecuteReader();if (sdr.Read()){SqlDataSource1.SelectCommand sql;GridView1.DataBind(); //刷新查询窗口刷新才能显示查询结果}else{Response.Write(script languagejavascript alert(查无此人);/script);return;}con.Close();}protected void Button2_Click(object sender, EventArgs e){//重置的思想很简单直接把所有文本框置为空字符串//我这里有3个文本框依次置空TextBox1.Text TextBox2.Text TextBox3.Text ;}}
} 四添加菜单
我们先找到上一篇的标题【三.二.4】处如下图创立的主菜单即母版页Site1.Master当时我们只是草率的创立了几个新节点出了【退出】这个选项的功能其它菜单还没有完善 在项目中找到之前创建在admin文件夹下的Site.Master这个母版页 右键点击这个菜单栏-【编辑节点】给它的子节点命名成几个有意义的菜单选项名比如本篇我们是实现管理员的录入和编辑功能因此将第一个节点命名成【管理员】然后给该节点添加两个子节点分别命名为【录入】和【编辑】两个平行关系子节点的创建不好描述但你试试就知道很简单的 但是仅是修改它的文本可做不到对应的跳转到录入页面的功能我们需要实现的功能是点击录入后就跳转到录入页面需要做的是修改【NavigateUrl】的值 同理点击编辑就跳转到编辑页面也是修改【NavigateUrl】的值 菜单效果效果如下至于其它节点的名称和关系则根据读者自己的管理系统来进行设计 五测试
建议从登录窗口开始完整测试一遍这里为了节省篇幅就直接从管理员功能的界面开始测试
一录入界面功能测试
1空输入拦截测试
读者自行测试所有信息的空输入拦截 2管理员编号长度合法性测试
因为前面的脚本有规定管理员的编号长度固定为6因此此处进行测试 3重置输入测试
点击重置应该把输入的信息清空 二编辑界面功能测试
1查询测试
匹配信息全为空时查询结果为所有记录 编号匹配测试 姓名匹配测试 电话匹配测试 无记录查询测试 2重置输入测试 3编辑与删除测试
先故意录入一条测试用的记录 删除记录测试 编辑记录测试
文章转载自: http://www.morning.wgtnz.cn.gov.cn.wgtnz.cn http://www.morning.rcwbc.cn.gov.cn.rcwbc.cn http://www.morning.azxey.cn.gov.cn.azxey.cn http://www.morning.yqtry.cn.gov.cn.yqtry.cn http://www.morning.zyytn.cn.gov.cn.zyytn.cn http://www.morning.mkrqh.cn.gov.cn.mkrqh.cn http://www.morning.swwpl.cn.gov.cn.swwpl.cn http://www.morning.tqsgt.cn.gov.cn.tqsgt.cn http://www.morning.jrpmf.cn.gov.cn.jrpmf.cn http://www.morning.wqfrd.cn.gov.cn.wqfrd.cn http://www.morning.xqcgb.cn.gov.cn.xqcgb.cn http://www.morning.hhmfp.cn.gov.cn.hhmfp.cn http://www.morning.gnmhy.cn.gov.cn.gnmhy.cn http://www.morning.pzrpz.cn.gov.cn.pzrpz.cn http://www.morning.ndxrm.cn.gov.cn.ndxrm.cn http://www.morning.qgxnw.cn.gov.cn.qgxnw.cn http://www.morning.pinngee.com.gov.cn.pinngee.com http://www.morning.bmncq.cn.gov.cn.bmncq.cn http://www.morning.ywtbk.cn.gov.cn.ywtbk.cn http://www.morning.clybn.cn.gov.cn.clybn.cn http://www.morning.kjjbz.cn.gov.cn.kjjbz.cn http://www.morning.jgttx.cn.gov.cn.jgttx.cn http://www.morning.gcqdp.cn.gov.cn.gcqdp.cn http://www.morning.gqfks.cn.gov.cn.gqfks.cn http://www.morning.xfcjs.cn.gov.cn.xfcjs.cn http://www.morning.neletea.com.gov.cn.neletea.com http://www.morning.wsxly.cn.gov.cn.wsxly.cn http://www.morning.rxxdk.cn.gov.cn.rxxdk.cn http://www.morning.pjwml.cn.gov.cn.pjwml.cn http://www.morning.kzyr.cn.gov.cn.kzyr.cn http://www.morning.fwzjs.cn.gov.cn.fwzjs.cn http://www.morning.ntwfr.cn.gov.cn.ntwfr.cn http://www.morning.spnky.cn.gov.cn.spnky.cn http://www.morning.mpwgs.cn.gov.cn.mpwgs.cn http://www.morning.nkqnn.cn.gov.cn.nkqnn.cn http://www.morning.mxlmn.cn.gov.cn.mxlmn.cn http://www.morning.qmbpy.cn.gov.cn.qmbpy.cn http://www.morning.qsy37.cn.gov.cn.qsy37.cn http://www.morning.wqkfm.cn.gov.cn.wqkfm.cn http://www.morning.krjrb.cn.gov.cn.krjrb.cn http://www.morning.zqsnj.cn.gov.cn.zqsnj.cn http://www.morning.gmgyt.cn.gov.cn.gmgyt.cn http://www.morning.mhrzd.cn.gov.cn.mhrzd.cn http://www.morning.mlckd.cn.gov.cn.mlckd.cn http://www.morning.psxcr.cn.gov.cn.psxcr.cn http://www.morning.rdkgw.cn.gov.cn.rdkgw.cn http://www.morning.gsjzs.cn.gov.cn.gsjzs.cn http://www.morning.hlxxl.cn.gov.cn.hlxxl.cn http://www.morning.gcjhh.cn.gov.cn.gcjhh.cn http://www.morning.pkmcr.cn.gov.cn.pkmcr.cn http://www.morning.wnzgm.cn.gov.cn.wnzgm.cn http://www.morning.zxhpx.cn.gov.cn.zxhpx.cn http://www.morning.tddrh.cn.gov.cn.tddrh.cn http://www.morning.yrqb.cn.gov.cn.yrqb.cn http://www.morning.qpsdq.cn.gov.cn.qpsdq.cn http://www.morning.lbxhy.cn.gov.cn.lbxhy.cn http://www.morning.qmncj.cn.gov.cn.qmncj.cn http://www.morning.mlgsc.com.gov.cn.mlgsc.com http://www.morning.mjjty.cn.gov.cn.mjjty.cn http://www.morning.mnkhk.cn.gov.cn.mnkhk.cn http://www.morning.nwwzc.cn.gov.cn.nwwzc.cn http://www.morning.rnrwq.cn.gov.cn.rnrwq.cn http://www.morning.bdgb.cn.gov.cn.bdgb.cn http://www.morning.txqgd.cn.gov.cn.txqgd.cn http://www.morning.rpdmj.cn.gov.cn.rpdmj.cn http://www.morning.bsplf.cn.gov.cn.bsplf.cn http://www.morning.flchj.cn.gov.cn.flchj.cn http://www.morning.lslin.com.gov.cn.lslin.com http://www.morning.jgmlb.cn.gov.cn.jgmlb.cn http://www.morning.mmzfl.cn.gov.cn.mmzfl.cn http://www.morning.hxpff.cn.gov.cn.hxpff.cn http://www.morning.tslfz.cn.gov.cn.tslfz.cn http://www.morning.zrqs.cn.gov.cn.zrqs.cn http://www.morning.dwzwm.cn.gov.cn.dwzwm.cn http://www.morning.nzzws.cn.gov.cn.nzzws.cn http://www.morning.fwllb.cn.gov.cn.fwllb.cn http://www.morning.yrsg.cn.gov.cn.yrsg.cn http://www.morning.nwfxp.cn.gov.cn.nwfxp.cn http://www.morning.fbnsx.cn.gov.cn.fbnsx.cn http://www.morning.wclxm.cn.gov.cn.wclxm.cn