- 热门文章:
- · 关于输入框中显示双引号和单引号
- · 关于&运算符效率低下的问题,好的解决办法
- · 右键失效
- · 显示用户是否在线的方法
- · 图片的导入导出
- · 取消缓存
- · n 行n列的显示数据
- · 转换十进制为二进制的函数
- · 随心所欲的定制“弹出窗口”
- · Duwamish深入剖析-结构篇
- · 如何实现无刷新的DropdownList联动效果
- · 交叉表应用-成绩统计
上一篇:ASP操作Excel技术总结 >>
bak文件带来的灾难
/**
作者 :慈勤强
Email:cqq1978@Gmail.com
最后修改:2004-10-03
**/
一日,在网上与一朋友闲聊,朋友是做网站开发的,以前也与其讨论过技术方面的问题,
只是好久没有在网上见到了,就好像人间蒸发了一样。
“Steven,最近忙些什么呢?”,朋友先问到。
“没什么,在家下岗待业呢,呵呵”,我答道。
“哦,那正好,我们最近刚刚完成了一个政府部门的信息系统,现在正处于试运行阶段,
你看看,给点意见,^-^”,朋友回答道。
“你这家伙,我都下岗了,你也不安慰一下,呵呵”
“你还怕找不到工作呀,^-^”
“呵呵,那好,不过别忘记请客啊....”
......
一阵调侃之后,朋友把网址发了过来。
于是,我打开这个网站一看,很清新的一个网站,看起来简单但不失实用,朴素但不失
悦目,挺不错的。再看一下,这是一个用Asp编写的动态网站,那猜想数据库应该是SQL Server
的吧。
“不错啊,这不是挺好的吗?”我又回了朋友一句。
“还行吧,过两天就要验收了,^-^”
“哦,那你们项目组几个写程序的人啊?”
“3个人,做了三个月呢”,听得出来,他们还是倾注了不少的精力的。
“哦,那你们用什么开发工具,如何进行版本控制呀?”,我是比较关注项目过程的。
“嗨,不怕你笑话,我们根本就没有进行什么版本控制,每个人负责几个栏目,到时候
一拼就可以了。 我们就用Editplus开发asp。”
这么大个系统,竟然连基本的版本控制都没有,真是不可思议,也不知道他们是怎么
接到这个政府部门的项目的?
我暗自心想,突然想起了Editplus,这是一个非常小巧,实用的文本编辑器,我也一直
用它。可是对于Editplus,默认的情况下,它都会在当前目录下生成一个当前文件的备份,
比如你在写一个member.asp的程序,保存的时候,Editplus会自动生成一个备份文件,
member.asp.bak。所以在写完程序,往外发布的时候,如果没有完全删除这些备份文件,那么
隐患则是巨大的。
他们不会存在这个问题吧,我心想。
我边想,边顺手在一个正在访问的文件News.asp文件后面加上一个.bak,也就是我访问
的文件变成了http://网址/News.asp.bak, 回车一看,果不其然,这个文件的源代码
就显示了出来,部分代码如下:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<!--#include file="include/conn.asp" -->
<!--#include file="include/function.asp" -->
<%
这里是他们的asp源代码
%>
一看,就知道conn.asp是连接数据库的文件,那就看看他们用的什么数据库吧,访问
http://网址/include/conn.asp.bak,结果如下:
Call ConnectSQL()
Sub ConnectSQL()
Dim strSqlServer,strUserName,strPassword,strDatabase
Dim strConn
strSqlServer = "210.51.*.*"
strUserName = "sa"
strPassword = "!K)^$XN)*723L&%$fg6%^k"
strDatabase = "ZhenJin"
strConn = "Driver={SQL Server};Server=" + strSqlServer + ";UID=" + strUsername
strConn = strConn + ";pwd=" + strPassword + ";Database=" + strDatabase
Set objConn = Server.CreateObject("ADODB.CONNECTION")
objConn.Open strConn
End Sub
通过这个文件,可以看出来,他们真的用的Sql Server数据库,而且连接用户是SA,这可是
Sql Server的最高权限用户了,相当于系统的管理员权限。
看到这里,我就不忍心再往下看了,急忙跟朋友说明问题。
“你们写完程序,Editplus生成的bak文件怎么不删除呢?呵呵”,我问到。
“哦?不会存在这种低级问题吧,我做的都删除了啊?”,朋友吃惊的回答到。
“那其他人写的呢?你们系统做完了,不会连自己都没有测试吧?”
“哦,那可能是别人没有注意吧,我们只是进行了简单的功能测试,时间太紧了”
..........
是啊,时间太紧了,给我的感觉是现在的项目没有一个时间不紧的。现在好多网络公司作出来的
项目甚至连自己都没有进行很好的QA测试,就拿出来给客户了,客户发现问题,再提出来,他们再改。
实际上从长远来讲,这样是得不偿失的。
下一篇:关于输入框中显示双引号和单引号 >>
相关文章:
- · http1.1状态代码及其说明
- · 超级ASP大分页_我的类容我做主
- · 为TextBox增加隐藏属性,Value属性
- · 在网页中添加一个音乐对象
- · 每刷新一次就换一次图片的代码
- · 用ASP发送信使服务
- · asp.net 2.0有感-2.0的变化(2)
- · asp.net 2.0有感-2.0的变化(1)
- · Asp深度揭密(下)
- · Asp深度揭密(上)
- · 将数字转换成大写的金额换算函数
- · asp.net 2.0中用GRIDVIEW插入新记录
- · 农历与西历对照
- · 学习笔记(7.8) -- 对服务器控件应用样式
- · 无刷新聊天室(短信陪聊程序)
- · popup的两种方法
- · 一些js例子
- · 在js和cs中的排序
- · 教你一次下载网页中的所有资源
- · 几个经典的ASP应用
- · 实现无刷新DropdownList联动效果
- · 将ASP纪录集输出成n列表格的方法
- · 二级联动菜单详解
- · 在ASP.NET WEB控件中应用样式(Style)
- · SQL Server 中易混淆的数据类型
- · ASP通用分页类源码
- · 创建一个ASP通用分页类
- · ASP+javascript的完整的日历使用
- · 上传文件
- · 将ASP纪录集输出成n列的的表格形式显示的方法
- · ASP概览
- · 文件下载的一个类
- · 一般要求下的页面打印
- · 大家一起分享C#调用oracle存储过程
- · 日历
- · [更改Blog界面的方法] 让你的Blog更个性化些
- · 自动修改Cache中的数据
- · 方便更换网站模板的文件结构
