请教一下……

唯一完美的番茄 2011-06-02 07:54:21
请问这段代码我这么理解对么?
这是一个点击过的标记吧类似,效果就是如果这个链接我点过,那就把它放到cookie中,颜色是默认的,如果没有那么就是else里的。 这也算是Cookies的一个用法小例子吧?

if (Request.Cookies["colors"]!=null)
{
string My_test = Request.Cookies["colors"].Value;
String[] My_colorList = My_test.Split(new char[] { ',' });
My_bgcolor = My_colorList[0];
My_tcolor = My_colorList[1];
}
else
{
My_bgcolor = "#FFDE94";
My_tcolor = "#efe3ce";
}


还一段,这个bool的应用是干嘛的呀?没太看明白,下面是用到这个issafe的地方,谢谢大家麻烦帮我解释下

public bool IsSafe (string str, int prama)
{
if (prama==1)
{
if (Regex.IsMatch(str,"[0-9]"))
{
return true;
}
else
{
return false;
}
}
else
{
if (str.IndexOf("and")>0 || str.IndexOf("or")>0 || str.IndexOf("'")>0)
{
return false;
}
else
{
return true;
}

}
}

…………
if (IsSafe(Request.QueryString["c_id"],2)==true)
{
My_sql = "select * from My_news where My_c_id=" + Request.QueryString["c_id"] + " order by My_n_date desc";
}
else
{
My_sql = "";
Response.Write("非法参数");
Response.End();
}
…………
...全文
98 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 wxr0323 的回复:]
引用 1 楼 maco_wang 的回复:

C# code
if (Request.Cookies["colors"]!=null) //判断cookies中有没有colors
{
string My_test = Request.Cookies["colors"].Value;//如果有,得到colors的值
String[] My_colorList = My_test.Spli……
[/Quote]

如果我的SQL写的不合法 岂不是都查不到我想要的数据?亦或是如果数据庞大的时候,就会不注意数据内容了然后就错了我也不知道。所以说这个判断,是判断 我自己写的 有没有错?。。。。
子夜__ 2011-06-02
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 maco_wang 的回复:]

C# code
if (Request.Cookies["colors"]!=null) //判断cookies中有没有colors
{
string My_test = Request.Cookies["colors"].Value;//如果有,得到colors的值
String[] My_colorList = My_test.Split(new char[] { ',' });//用逗号……
[/Quote]

IsSafe

判断你的SQL是否合法。。
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 porschev 的回复:]
引用 6 楼 lxwankkk 的回复:

引用 3 楼 porschev 的回复:
C# code


public bool IsSafe (string str, int prama) //看你下面的方法。。str是条件语句,prama是你判断参数
{
if (prama==1) //如果prama==1,进if
{
if (Regex.I……


判断是否出现这三……
[/Quote]


哦,太感谢了! 可是 是不是说这里貌似其实没怎么体现出这个bool判断的价值……?SQL语句是我自己写的,肯定只是一个条件,莫非是以后便于拓展?
其他地面貌似就没调用这个判断了
porschev 2011-06-02
  • 打赏
  • 举报
回复


补充一下。。。单引号明白是什么意思了。。

就是你限制你的where条件的数据类型。。

比如字符串类型的。。。where 字符串类型的字段 = ‘XXX’;

所以看你的下面sql语句。。应该是要限制条件My_c_id为int类型的
porschev 2011-06-02
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 lxwankkk 的回复:]

引用 3 楼 porschev 的回复:
C# code


public bool IsSafe (string str, int prama) //看你下面的方法。。str是条件语句,prama是你判断参数
{
if (prama==1) //如果prama==1,进if
{
if (Regex.I……


判断是否出现这三个?and,or,单引号? 他们会……
[/Quote]

sql条件where如果多条件的话。。。会用and或or关键字。。

比如: select * from 表名 where 字段1 = XX and 字段2 = XXX; //并且关系
select * from 表名 where 字段1 = XX or 字段2 = XXX; //或者关系

单引号的目地没想到。。

这个意思就是。。。如果传入的param是非1的数。。

那么where后面是单条件。。。不能出现多条件的关键字
  • 打赏
  • 举报
回复
=。= 帮忙解释下呗……
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 porschev 的回复:]
C# code


public bool IsSafe (string str, int prama) //看你下面的方法。。str是条件语句,prama是你判断参数
{
if (prama==1) //如果prama==1,进if
{
if (Regex.I……
[/Quote]

判断是否出现这三个?and,or,单引号? 他们会在哪怎么出现的呀……没太理解
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 maco_wang 的回复:]
C# code
if (Request.Cookies["colors"]!=null) //判断cookies中有没有colors
{
string My_test = Request.Cookies["colors"].Value;//如果有,得到colors的值
String[] My_colorList = My_test.Split(new char[] { ',' });//用……
[/Quote]

谢谢LS各位帮忙
0.0 那是不是就是我那样理解它的功能? 还是应该是别的意思?

第二段代码那个判断参数格式 参数param 是哪个呀? 还是不太明白它的作用,是判断我输入的格式?。那个c_id标志增量+1的,,嗯 就是不太理解判断的哪个,判断这个有什么用。麻烦在细解释下……
xyytuo 2011-06-02
  • 打赏
  • 举报
回复
porschev 2011-06-02
  • 打赏
  • 举报
回复



public bool IsSafe (string str, int prama) //看你下面的方法。。str是条件语句,prama是你判断参数
{
if (prama==1) //如果prama==1,进if
{
if (Regex.IsMatch(str,"[0-9]")) //str是数字。。。
{
return true;
}
else //str是不是数字。。。
{
return false;
}
}
else //params !=1时进else
{
if (str.IndexOf("and")>0 || str.IndexOf("or")>0 || str.IndexOf("'")>0) //如果str中包含and,or,单引号
{
return false;
}
else //不包话and,or,单引号
{
return true;
}

}
}


叶子 2011-06-02
  • 打赏
  • 举报
回复
下面那个是判断参数的格式是否正确。
叶子 2011-06-02
  • 打赏
  • 举报
回复
if (Request.Cookies["colors"]!=null) //判断cookies中有没有colors
{
string My_test = Request.Cookies["colors"].Value;//如果有,得到colors的值
String[] My_colorList = My_test.Split(new char[] { ',' });//用逗号分割存入数组
My_bgcolor = My_colorList[0];//得到数组中的第一个值
My_tcolor = My_colorList[1];//得到数组中的第二个值
}
else//如果没有给两个默认值
{
My_bgcolor = "#FFDE94";
My_tcolor = "#efe3ce";
}

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧