php回收站功能的实现,JSP实现回收站功能 | 学步园

两个月前接了一个项目,是一个网站。经过初步分析前台的"最新..."需要动态生成。我们毕竟是学JSP动态网站开发的,正好边学边做。我发现这里要链的的客户还真不少。那假如我无意中删除错了,把一条客户的信息删掉了,那该咋办?于是我想到了邮箱里的"垃圾箱"功能。再结合微软的Windows OS上的"回收站"功能,使我产生了一个用JSP实现"回收站"的功能的想法。

艰苦的尝试、请教、修改......... 。

两个月后的今天,项目做完了。其中5月份有三个星期因为课程设计耽误了,那三周没有做。其他除了上课时间我都在做这个项目。当然与这篇文章的主题功能"回收站"也做好了。下面我就说下完成这个项目的知识点:

1.物理删除与逻辑删除

说这个话题前先给大家看一段材料吧!~

在计算机中资料数据等都以文件形式存储,删除文件分为两种情况,一种叫"逻辑删除",另一种叫"物理删除".

逻辑删除顾名思义,文件没有被真正的删除,只不过是文件名的第一个字节被改成操作系统无法识别的字符,通常这种删除操作是可逆的,就是说用适当的工具或软件可以把删除的文件恢复出来。

物理删除是指文件存储所用到的磁存储区域被真正的擦除或清零,这样删除的文件是不可以恢复的。

这个说法好像是2004微软提出的。我最初是看到一些关于Visual Foxpro数据库中记录恢复的文章里收到的启发。再后来我找到了一篇非常有用的帖子。这也是实现这个功能的原理。帖子中有用的内容:

xuzuning(唠叨)回复于 2005-06-16 10:03:52 得分 10    //才给10分了!~

表中增加一个字段,如

del   emun('Y','N')   default   'N'

检索时

select   *   from   tbl_name   where   del='N'

删除时(注意:不能再用delete了)

update   tbl_name   set   del='Y'   where   条件

恢复删除

update   tbl_name   set   del='N'   where   条件

永久删除

delete   from   tbl_name   where   del='Y'

update   tbl_name   set   del='Y'   where   条件  ,这条SQL语句中这个"条件"的书写也很重要,下面结合这个条件引入下个知识点。

2.被动态赋值的复选框及获取多个复选框时值的处理。

先说复选框的动态赋值问题。框架:在每条记录前加一个复选框,当勾选复选框按"提交"按钮提交表单时,被选中的复选框value属性值要提前或者在被选择的同时获取到。我差点就用了JS脚本。后来经过多次设想、尝试、修改发现这个问题并不难实现,只需要:str.append("

再说多个复选框的value值被同时获取时用到的知识点。关于这一点还是我MSN上一个我并不熟悉的网友给我说的。结果让我给用上了。在此多谢该网友提供的这个方法:

String result[] = request.getParameterValues("checkbox");

String s_id="";

if(result.length>0){

for(int k=0;k

s_id=s_id+result[k]+",";

}

s_id=s_id.substring(0,s_id.length()-1);//去掉s_id中的最后一个逗号

out.print("你选择的客户ID号是:"+s_id);

}

用一个数组来接收从上个页面传递过来的多个复选框的值。当然你这样写了,用于删除(逻辑删除)的SQL语句(Update.....)也得改了。

3.分页和在同一个页面同时有Update和Delete语句时的处理。

分页技术我就不说了,面得班门弄斧了。

同一个页面同时有Update和Delete语句时的处理这个知识点我也简单说下。用到的有JavaScript知识。

.....

...........

>

........

在处理页面这样写:

String sql = " ";

int  info = Integer.parseInt(request.getParameter("tdy218"));

if(info==0){

sql = "update cusinfo set state='Y' where cusid  in("+s_id+")";

}

else if(info==1){

sql = "delete from cusinfo where cusid in("+s_id+") ";

}

下面的我不用说你也知道该如何操作了吧?

还有好多零碎的知识点我就不说了,改天再续。

小结:用的知识点并不怎么高级,只是我们平时学习时多多积累。把好多知识点聚集到一起或许能创造出一个新的东西出来了。

最后来看看我的这个回收站页面吧!~

%E5%9B%9E%E6%94%B6%E7%AB%99.jpg

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值