asp插入表格.docx
《asp插入表格.docx》由会员分享,可在线阅读,更多相关《asp插入表格.docx(7页珍藏版)》请在冰豆网上搜索。
asp插入表格
竭诚为您提供优质文档/双击可除
asp插入表格
篇一:
javascript动态添加表格数据行,asp后台数据库保存例子
在很多web应用中,我们会遇到很多需要动态插入多行纪录的地方。
比如,在人才网站上,我们填写简历的时候,我们要填写我们的项目经验,我们可以根据自己的实际情况动态的添加条数,这种不是以单独页面的形式添加,这种动态添加是在同一个页面下动态添加,最后再一起提交到服务器保存到数据库中。
本文,我将以一个类似的例子来做一个前台用javascript动态添加数据项,后台保存到数据库的例子。
浏览器:
ie.6.0后台:
asp(Vbscript)前台:
html+javascripthtml代码:
name:
sex:
projectname:
befredescription:
begindate:
Finisheddate:
delete
js代码:
/*thisfunctionisusetoaddonerowdynamicly
*tabobj:
targettable
*colnum:
thenumberofcolumnsthatofarowintable
*sorpos:
thesourceofthenewrow.
*targpos:
thepositionwherethenewrowwillbeadded.
*
*/
functionaddRow(tabobj,colnum,sorpos,targpos){
varntR=tabobj.insertRow(tabobj.rows.length-targpos);//insertanewrowintoappointedtableonthe
//appointedposition.
vartRs=tabobj.getelementsbytagname(tR);//gettRscollectionfromtheappointedtable
varsortR=tRs[sorpos];//positionedthesortR
vartds=sortR.getelementsbytagname(td);//gettdscollectionfromtheappointedrow
if(colnum==0||colnum==undefined||colnum==isnan){
colnum=tabobj.rows[0].cells.length;}
varntd=newarray();
//createanewtdsarrayfor(vari=0;i //suffixmustbeappointed
ntd[i].innerhtml=tds[i].innerhtml;//copythevalueinntd[i]sinnerhtmlfromcorrespondingtds
}
}
/*thisfunctionisusetoremoveappointedrowinappointedtable
*tabobj:
theappointedtable
*targpos:
targetrowposition
*btnobj:
currentlyclickeddeleteimagebutton
*
*/
functiondeleteRow(tabobj,targpos,btnobj){//Removetablerow
for(vari=0;i if(tabobj.getelementsbytagname(img)[i]==btnobj){
tabobj.deleteRow(i+targpos);
}
}
}
前台代码总结:
上面的代码有一个要注意的地方,那就是原始行,我们设置了样式为display:
none,这是因为,下面js中添加行采用的是newtd.innerhtml=sourcetd.innerhtml的方式,即直接把已经存在的列中的内容直接复制到新添加的列的innerhtml属性中,所以隐藏“数据源“列被防止用户删除而出现"objectexcepted"错误。
---------------------------------------------------------------------------
Vbscript代码:
sql=sql","
sql=sql","
sql=sql")"
Response.write""ifoccusanyerrorinthetransaction,rollbacktranscation
conn.Rollbacktranselseifnoterror,mittrans
endif
conn.close
setconn=nothing
%>
后台代码总结:
获取多数据的方法是调用request("").count,以count的数目来确定要往主表插入的子表纪录次数。
由于数据操作次数不确定,为了防止在执行数据库操作时发生异常,造成数据不一致。
我们采用用事务管理。
事务管理具有:
原子性,一致性,等特点。
可以保证数据安全。
我们在数据库操作开始的时候调用conn.begintrans打开一个事务,在数据操作结束时,用conn.errors.count来判断在事务期间是否有错误发生,如果发生错误或异常就conn.Rollbacktrans回滚。
否则提交事务,完成数据库操作。
------------------------------------------------------------------------------------
预览:
图一:
进入填写数据页面,点击add按钮,添加一行,到图二
篇二:
使用dreamweaver制作asp网站向access插入记录和显示记录
使用dreamweaver制作asp网站----向access数据库添加
和显示记录的步骤和注意事项
1、在d盘建站点文件夹,其中有database文件夹,事先建
好一个access数据库,里面有相应的基本表,暂时不需要复选框字段,字段匹配容易出错。
注:
如果需要自动生成时间的话,
将该字段的字段类型设定为日期时间型,默认值设为:
1.date()显示当前日期
2.now()显示当前日期时间
2、在iis中建立虚拟目录,路径指向站点文件夹。
3、在dw中建立站点,选择使用aspVbs服务器选项,
其中测试路径要能够体现虚拟路径,如:
(站点文件夹)/。
如果测试服务器提示前未打钩,则返回站点定义里,重新做设置,比如测试改为本地网络型等。
如果在dw中不能浏览时,可以选择在iis中进行浏览。
4、在dw站点下,新建conn.asp页面,选择“应用程序”
面板下的“数据库”标签,单击“+”按钮,选择弹出的“数据源名称”。
弹出对话框以后,选择“数据源名称”对话框中的“定义”按钮,“系统dsn”---“添加”----选择accessdriver(*.mdb),数据源名称输入
“myconn”,对数据库位置进行选择,选择站点文件夹中的database文件夹。
接着,连接名称输入“aspconn”,数据源名称选择“myconn”。
点击“测试”按钮,在弹出“成功创建连接脚本”的提示框后,再单击“确定”按钮。
5、在dw站点下,新建insert.asp页面,插入表单,表单
中的字段和access中的字段名、数据类型相一致。
其中,“单选、复选、列表/菜单”的名称要与access中的字段名相同,值为相应插入数据表的值,如“男”或者“女”等。
在表单中单击“应用程序”面板下的“服务器行为”的“+”按钮,选择弹出的“插入记录”命令,在弹出的对话框中,对将要插入的列进行正确的匹配选择。
进行“提交”测试,看能否向数据库中的表写入数据。
先不要进行密码检查和用户名判断,等提交数据正常之后,再来设置密码检查和用户名判断。
(asp插入表格) 6、如果不能,往往出现数据库的权限写入问题。
此时,可
进行如下的设置:
a,在站点文件夹所属的d盘驱动器上,选择“工具”菜单下的“文件夹选项”,取消“简单文件夹共享”选项。
b,选中c:
\windows\temp文件夹,右键“属性”,在“安全”选项卡上,添加“everyone”用户,设置全部权限。
c,如果Fat系统,则不需要此步。
选中站点文件夹,右键“属性”,在“安全”选项
卡上,添加“everyone”用户,设置全部权限。
如果分区是Fat32格式,先进行a项操作,接着将站点文件夹“属性”---“常规”----“只读”更改为“存档”属性后,再进行b项操作。
7、在站点下,新建list.asp页面。
插入表格,设置相应的
表头字段。
单击“应用程序”面板下的“服务器行为”的“+”按钮,选择弹出的“记录集(查询)”命令,在弹出的对话框中设置,“名称”默认,“连接”选择“aspconn”,选择表格后,使用“全部”列选项,可做“筛选”和“排序”操作,先“测试”,后“确定”。
选择“绑定”选项卡,在“记录集”处可以查看所有相应的字段,插入一个具有相应列数(与字段数量相当)和行数的表格,将“记录集”处的相应字段拖拽到表格的相应列处,行数一般放置于第二行,第一行应为表头字段名称。
接着选定有记录集的行,然后选择在表单中单击“应用程序”面板下的“服务器行为”的“+”按钮,选择弹出的“重复区域”命令,在弹出的对话框中,使用默认的“记录集名称”(与前相同,一般默认为recordset1),“显示”选择“所有记录”,进行浏览即可。
8、在insert.asp页面建一个链接,如“显示所有车源信息”,
链接页面为list.asp页面,进行浏览测试。
9、如果要进行查询,即有条件的显示记录,比如根据运单
号来显示查询。
先建立一个查询表单或者页面,将表单的“action”值设为显示页面list.asp,将“提交”按钮的文字“提交”改为“查询”即可。
接着,在显示页面list.asp服务器行为里的“记录集”项里,设置筛选条件,比如:
name=表单变量name,前一个name表示的是数据库里的待比较查询字段,后一个name表示的是查询表单里的单行文本域的名称。
10、删除记录操作。
首先制作一个显示页面,类似于list.asp
页面,在表格的显示记录集的行上最后一列插入“删除”字样,使其重复显示。
全选“删除”,使其被选定,选择服务器行为—>“+”,转到详细页面,从弹出菜单中,详细页填写新建网页delete.asp,其它保持不变完成页面设置。
打开delete.asp,类似于list.asp页面操作,在其上创建表格显示必须的详细信息,并在左边的表格上填写相应的字段名,然后给网页绑定一个记录集,可以通过“绑定”选项卡的“记录集(查询)”命令完成,并对其字段拖到对应的右这表格中,在表单内建立一个“删除确定”按钮。
点击服务器行为->记录集分页->移至特定记录,按确定按钮(保持默认值),但是如果数据库中字段用的是中文“编号”,则需要将相应的匹配id中的默认“id”更改为相一致的中文“编号”。
点击服务器行为->删除记录,在弹出菜单中填上相关内容即可,
其中“删除后,转到”项填写相应的list页面,一般回到前一个删除list页面,可以继续删除其他栏目内容。
11、如果在dw中浏览不了,那么在iis中进行浏览试试,
有可能在iis中能浏览成功,接着在dw中也能浏览成功。
12、注册链接按钮设计代码:
注册”onclick=”js:
location.href=’zhuce.asp’”>
篇三:
在中用c#代码实现对数据表的插入操作
源码:
1)添加一个"类库"项目dal并创建sqlhelper.cs
*数据库助手类
*版权所有:
无声岁月
*/
usingsystem;
usingsystem.collections.generic;
usingsystem.text;
usingsystem.data;/*倒入命名空间*/
usingsystem.data.sqlclient;/*倒入命名空间*/
namespacedal
{
publicclasssqlhelper
{
publicinttest()/*创建公用的动态方法,因为是动态方法,故调用时须先创建实例*/
{
/*向新闻类别表:
categoRy插入记录*/stringconnstr=
@"server=wei\mysqlexpRess;database=newsystem;uid=sa;pwd=123456;";sqlconnectionconn=newsqlconnection(connstr);/*建立数据库连接*/
conn.open();/*打开数据库*/
stringsql="insertintocategory(name)values(教育新闻!
)";
sqlcommandcmd=newsqlcommand(sql,conn);/*建立command对象(即命令执行对象)*/
intres=cmd.executenonquery();/*执行sql语句操作,无返回记录集信息,只返回受影响的记录数*/
conn.close();/*关闭数据库以释放资源*/
returnres;/*把受影响的行数返回给test*/
}
}
}
2)建立inserttest.aspx.cs
usingsystem;
usingsystem.data;
usingsystem.configuration;
usingsystem.web;
usingsystem.web.security;
usingsystem.web.ui;
usingsystem.web.ui.webcontrols;
usingsystem.web.ui.webcontrols.webparts;
usingsystem.web.ui.htmlcontrols;
usingdal;/*倒入dal项目*/
publicpartialclass_default:
system.web.ui.page
{
protectedvoidpage_load(objectsender,eventargse)
{
Response.write(newsqlhelper().test());/*隐式创建类
(sqlhelper)并对象调用方法:
test()*/
}
}
需要注意的是:
(1)运行前须添加引用
(2)须编译生成
按F5或者ctRl+F5预览:
从预览结果知道,已经有一条记录被成功插入:
以下是我的Vs工作界面:
当然在调试的过程中难免会出现一些意想不到的错误,假如有朋友碰到困难了,可以留言,彼此探讨,大部分操作出错都是连接不成功