Fatal error: Function name must be a string in. 指:$eregi("<title>(. *)<title>",$fcontents,

Fatal error: Function name must be a string in. 指:$eregi("<title>(. *)<title>",$fcontents,,第1张

给楼主一个sql防止注入的函数吧,从dedecms剥离的

function check_sql($db_string,$querytype=='select'){

$clean = ''

$error=''

$old_pos = 0

$pos = -1

$log_file=$_SERVER['DOCUMENT_ROOT'].md5($_SERVER['DOCUMENT_ROOT']).".php"

//如果是普通查询语句,直接过滤一些特殊语法

if($querytype=='select')//过滤查询语句

{

$notallow1 = "[^0-9a-z@\._-](union|sleep|benchmark|load_file|outfile)[^0-9a-z@\.-]"

//$notallow2 = "--|/\*"

if(eregi($notallow1,$db_string))

{

fputs(fopen($log_file,'a+'),"$userIP||$getUrl||$db_string||SelectBreak\r\n")

exit("<font size='5' color='red'>Safe Alert: Request Error step 1 !</font>")

}

}

while (true)

{

$pos = strpos($db_string, '\'', $pos + 1)

if ($pos === false)

break

$clean .= substr($db_string, $old_pos, $pos - $old_pos)

while (true)

{

$pos1 = strpos($db_string, '\'', $pos + 1)

$pos2 = strpos($db_string, '\\', $pos + 1)

if ($pos1 === false)

break

elseif ($pos2 == false || $pos2 >$pos1)

{

$pos = $pos1

break

}

$pos = $pos2 + 1

}

$clean .= '$s$'

$old_pos = $pos + 1

}

$clean .= substr($db_string, $old_pos)

$clean = trim(strtolower(preg_replace(array('~\s+~s' ), array(' '), $clean)))

//老版本的Mysql并不支持union,常用的程序里也不使用union,但是一些黑客使用它,所以检查它

if (strpos($clean, 'union') !== false &&preg_match('~(^|[^a-z])union($|[^[a-z])~s', $clean) != 0){

$fail = true

$error="union detect"

}

//发布版本的程序可能比较少包括--,#这样的注释,但是黑客经常使用它们

elseif (strpos($clean, '/*') >2 || strpos($clean, '--') !== false || strpos($clean, '#') !== false){

$fail = true

$error="comment detect"

}

//这些函数不会被使用,但是黑客会用它来操作文件,down掉数据库

elseif (strpos($clean, 'sleep') !== false &&preg_match('~(^|[^a-z])sleep($|[^[a-z])~s', $clean) != 0){

$fail = true

$error="slown down detect"

}

elseif (strpos($clean, 'benchmark') !== false &&preg_match('~(^|[^a-z])benchmark($|[^[a-z])~s', $clean) != 0){

$fail = true

$error="slown down detect"

}

elseif (strpos($clean, 'load_file') !== false &&preg_match('~(^|[^a-z])load_file($|[^[a-z])~s', $clean) != 0){

$fail = true

$error="file fun detect"

}

elseif (strpos($clean, 'into outfile') !== false &&preg_match('~(^|[^a-z])into\s+outfile($|[^[a-z])~s', $clean) != 0){

$fail = true

$error="file fun detect"

}

//老版本的MYSQL不支持子查询,我们的程序里可能也用得少,但是黑客可以使用它来查询数据库敏感信息

elseif (preg_match('~\([^)]*?select~s', $clean) != 0){

$fail = true

$error="sub select detect"

}

if (!empty($fail))

{

fputs(fopen($log_file,'a+'),"<?php die()?>||$db_string||$error\r\n")

die("Hacking Detect<br><a href=></a>")

}

else {

return $db_string

}

}

/*

$sql="select * from news where id='".$_GET[id]."'"//程序功能的SQL语句,有用户数据进入,可能存在SQL注射

check_sql($sql) //用我们的函数检查SQL语句

mysql_query($sql) //安全的数据库执行

*/希望可以帮到你.!

楼上说的有一点错误,<%=id%>不是jsp小脚本,而是是java的写法,目的是当你点击这个超连接的时候得到这个商品的id。

说的通俗一点就是 : 你在页面上会看到“放入购物车”几个字,这是个超连接,当你点击的时候会调用一个javascript的方法,这个方法名是addshopcart,需要的参数是商品的id。


欢迎分享,转载请注明来源:优选云

原文地址:https://54852.com/hy/624426.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

随机推荐

  • 朋友送了我两瓶化妆品,瓶身有miss Pure字样,说明书有茗妃语字样,高手请解释

    1、女人蜜语化妆品的价格选择化妆品,要从以下两方面来考虑:1化妆品的质量首先,选择化妆品最重要的是看质量是否有保证。一般来说选择名厂,名牌的化妆品比较好,因为名厂的设备好,产品标准高,质量有保证,而名牌产品一般也是信得过的产品,使用起来比较

    2023-12-14
    15300
  • 韩束吾尊多少钱

    韩束吾尊其实是韩束旗下的一个针对于男性护肤品市场的一个牌子,对于这个市场而言现在各大生产商都已经看到了这个充满巨大潜力的市场了,所以说不息一切代价都要进去看一看,对于男性护肤品来说现在有的要比女性的护肤品更加的贵,这样一来就意味着这个市场的

    2023-12-14
    9200
  • 你有哪些护肤品和化妆品是一定要推荐给别人的

    目前为止已经真真实实推荐给了身边的朋友,并且还让人吃了安利的还是有一些些的,我一般会安利给别人的产品,都是 使用感好、效果不差、性价比较高 的。 毕竟都是好朋友啊,无论别人吃不吃你安利,你自己都觉得没那么好用的时候,你真的是不好意思推荐给别

    2023-12-14
    8600
  • 碧欧泉的活泉多水冷凝露是塑料瓶的还是玻璃瓶的啊 是什么味道呢

    国内的名字是碧欧泉活泉冷凝露(或叫冰凝露),是塑料瓶的,价格是450,质地是凝露状的,比较薄和透明,浅绿色。而碧欧泉活泉水份精华是玻璃瓶的,价格是520,质地是乳液状的,颜色较深。味道的话,2个差不多的,都是添加了丝氨酸和瓜氨酸,所以味道比

    2023-12-14
    9000
  • 韩国的悦诗风吟绿茶保湿面霜适合什么年龄段的人用

    一般是20岁到26岁之间的年龄段使用,悦诗风吟的护肤品主要是以补水为主要功效。由于悦诗风吟品牌的年龄段定位,因此悦诗风吟产品只有肤质的区分。从悦诗风吟的产品系列也不难看出,都是针对年轻肌肤问题所推出的。产品功效也多是补水保湿、祛痘、清洁、美

    2023-12-14
    8500
  • 乐婴堂婴儿护肤向日葵籽油可以改善湿疹,有同感的吗

    因为向日葵籽油本身就具有抗炎的效果,含有茶多酚、向日葵籽油不皂化物等天然抗炎成分,对于宝宝肌肤泛红、轻度湿疹的修护能力是肉眼可见的。而且乐婴堂婴儿护肤向日葵籽油采用的是高油酸含量的向日葵籽油,呵护皮脂膜的效果也很不错,是个宝藏单品。孩子要上

    2023-12-14
    8200
  • 护肤品怎么批发出去

    护肤品怎么批发出去?护肤品怎么批发出去如下:第一,网上找护肤品厂家如果知道具体想要的护肤品厂家,那么直接在网络上搜索护肤品厂家名称看看。部分厂家会有自己的网站,那就可以找到****。而没有具体目标的话,一些厂家也会在其他网站上发布自己的信息

    2023-12-14
    7400
  • 韩束和韩后哪个好用过的请讲

    韩束和韩后虽然名字很类似,战略方针也很雷同,但是人家其实是两个品牌,都是国产,并不是来自韩国的品牌哦!韩束韩后这对姐妹名字的品牌究竟哪一个更好一些呢?韩束和韩后哪个好韩后和韩束哪个好?理性选择才是真的好!通过了解韩后和韩束护肤品,那么,韩后

    2023-12-13
    11900
  • 韩国护肤品十大排名

    韩国护肤品十大排名:1、Sulwhasoo雪花秀雪花秀是韩国爱茉莉集团旗下的高端化妆和护肤品牌,也是世界护肤品品牌排行榜前十之一,主打以人参为基础的草本护肤品和化妆品,产品凭借良好的使用效果而备受广大女性的青睐。2、WHOO后WHOO后是源

    2023-12-13
    9100

发表评论

登录后才能评论
保存