再谈SQL注入SQL版ASPHTMLtemplate3
第一种方法是处理接收的数据并将值写入数据库。然后引用模板代码,并将特殊代码转换为可接受的值。最后,通过FSO生成HTML页面,还需要注意生成的文件的路径地址保存到数据库表中。
下次继续出错
%>
c_title =要求表单(c_title )
c_content =要求表单(c_content )
%>
名为makefilename(现在())'makefilename是自定义函数
文件夹=newsfile / 的日期() /
路径= folderfname
%>
SQL =SELECT * FROM c_news
集= server.createobject(ADODB。记录集)
的。打开SQL,Conn,3
rs.addnew
RS(c_title )= c_title
RS(c_content )= c_content
RS(c_filepath )=文件路径
rs.update
关闭
设置=无
%>
SQL1 =选择m_id,从c_moban哪里m_id = 1 m_html
集RS1 = server.createobject(ADODB。记录集)
rs1.open SQL1,Conn,1,1
mb_code = RS1(m_html )
rs1.close
集RS1 =没有
conn.close
设置conn =没有
c_title = HtmlEncode(c_title)
c_content = HtmlEncode(c_content)
mb_code =取代(mb_code,cntop美元$
mb_code =取代(mb_code,cnleft美元$
mb_code =取代(mb_code,cnright美元$
%>
设置FSO = server.createobject(脚本。FileSystemObject )
Fso.CreateFolder(server.mappath(文件夹))
集的FOUT = fso.createtextfile(server.mappath(路径))
fout.writeline mb_code
fout.close
%>
这篇文章已成功添加。
{所有选择和复制}
6、显示数据库表中的记录和做一个链接到HTML的网页showit.asp
集= server.createobject(ADODB。记录集)
SQL =SELECT * FROM c_news顺序c_id desc
的。打开SQL,Conn,1,1
%>
如果rs.eof和rs.bof然后response.write(暂时没有文章,)
直到rs.eof呢
%>cellspacing = 1 # bgcolor = 000000 >对齐=正确的边框颜色=# cccccc
背景颜色=# cccccc>宽度= 591 # BorderColor = f3f3f3背景颜色=# f3f3f3>
边框颜色=# ECECEC进行填充背景颜色=# ECECEC进行填充BorderColor = # ffffff > { } { } { }
背景颜色=# ffffff>
最后如果
%>
关闭集=没有
conn.close设置conn =没有
%>
{所有选项提示:您可以首先修改部分代码,然后按run
7、修改数据内容页chang.asp
修改数据的内容,还需要修改相应的HTML页面。修改实际上是为了重新生成文件,而文件名与以前一样,类似于文件的封面。
如果要求表单(提交)=改变然后
c_title =要求表单(c_title )
c_content =要求表单(c_content )
c_id =要求表单(c_id )
c_filepath =要求表单(c_filepath )
集= server.createobject(ADODB。记录集)
SQL =SELECT * FROM c_news哪里c_id =c_id
的。打开SQL,Conn,3
RS(c_title )= c_title
RS(c_content )= c_content
RS(c_time )=现在()
rs.update
关闭
设置=无
%>
SQL1 =选择m_id,从c_moban哪里m_id = 1 m_html
集RS1 = server.createobject(ADODB。记录集)
rs1.open SQL1,Conn,1,1
mb_code = RS1(m_html )
rs1.close
集RS1 =没有
conn.close
设置conn =没有
c_title = HtmlEncode(c_title)
c_content = HtmlEncode(c_content)
mb_code =取代(mb_code,cntop美元$
mb_code =取代(mb_code,cnleft美元$
mb_code =取代(mb_code,cnright美元$
%>
设置FSO = server.createobject(脚本。FileSystemObject )
集的FOUT = fso.createtextfile(server.mappath(c_filepath))
fout.writeline mb_code
fout.close
%>
如果然后
集= server.createobject(ADODB。记录集)
SQL =SELECT * FROM c_news哪里c_id =ID
的。打开SQL,Conn,1,1
c_id = RS(c_id )
c_filepath = RS(c_filepath )
c_title = RS(c_title )
c_content = RS(c_content )
最后如果
%>
标题:>
内容:
>
>
{所有选项提示:您可以首先修改部分代码,然后按run
8、删除记录的页面del.asp
相同的!删除,除了删除数据库表中的记录外,还应删除相应的HTML页面:
c_id = request.querystring(c_id )
SQL =SELECT * FROM c_news哪里c_id =c_id
集= server.createobject(ADODB。记录集)
的。打开SQL,Conn,2
路径= RS(c_filepath )
设置FSO = CreateObject(脚本。FileSystemObject )
fso.deletefile(server.mappath(路径))
设置FSO
rs.delete
关闭
设置=无
conn.close
设置conn =没有
%>
四、其他功能
模板管理页面:并不是每一个打开的数据库表中添加或修改模板代码,所以程序管理页面代码量少,应该很简单的。当然,在管理员登录的认证程序不在书中读到:还有,如果你设计的多模板,当你发布的信息,你应该添加模板选择框,并执行HTML的转换当SQL选择不同的m_id.in任何情况下,首先这些技术测试了自己。很多操作,相信读一千遍,其义自见。
调试地址:
文件下载: