目标:管理员可以编辑,删除任意栏目贴子,本版版主可以编辑,删除本版的贴子,普通用户不能删除编辑贴子。现在的程序:管理员可以编辑,删除任意栏目贴子,版本版主只能删除自己的贴子(而且,在别的版也能删除自己的贴子),普通用户也能删除自己的贴子。
代码:
Is_Edit="0";
Is_Delete="0";
if (session.getValue("UserClass").equals("系统管理员"))
{
Is_Edit="1";
Is_Delete="1";
}else if(session.getValue("UserClass").equals("版主"))
{
out.println("OK");
sql="select 论坛id from 论坛栏目 where 版主姓名='"+session.getValue("UserName")+"'";
rs=stmt.executeQuery(sql);
rs.last();
if (rs.getRow()>0)
{
if (Board_Id.equals(rs.getString("论坛栏目")))
{
Is_Edit="1";
Is_Delete="1";
}
}
}else
{
sql="select * from 贴子 where 贴子id="+Edit_Id+" and 贴子作者='"+session.getValue("UserName")+"'";
rs=stmt.executeQuery(sql);
rs.last();
if (rs.getRow()>0)
Is_Edit="1";
sql="select * from 贴子 where 贴子id="+Delete_Id+" and 贴子作者='"+session.getValue("UserName")+"'";
rs=stmt.executeQuery(sql);
rs.last();
if (rs.getRow()>0)
Is_Delete="1";
}
代码:
Is_Edit="0";
Is_Delete="0";
if (session.getValue("UserClass").equals("系统管理员"))
{
Is_Edit="1";
Is_Delete="1";
}else if(session.getValue("UserClass").equals("版主"))
{
out.println("OK");
sql="select 论坛id from 论坛栏目 where 版主姓名='"+session.getValue("UserName")+"'";
rs=stmt.executeQuery(sql);
rs.last();
if (rs.getRow()>0)
{
if (Board_Id.equals(rs.getString("论坛栏目")))
{
Is_Edit="1";
Is_Delete="1";
}
}
}else
{
sql="select * from 贴子 where 贴子id="+Edit_Id+" and 贴子作者='"+session.getValue("UserName")+"'";
rs=stmt.executeQuery(sql);
rs.last();
if (rs.getRow()>0)
Is_Edit="1";
sql="select * from 贴子 where 贴子id="+Delete_Id+" and 贴子作者='"+session.getValue("UserName")+"'";
rs=stmt.executeQuery(sql);
rs.last();
if (rs.getRow()>0)
Is_Delete="1";
}
我要是看到有人这样写sql代码,又是用中文,又是用字符串来拼凑sql,一定把他骂死。