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) //安全的数据库执行

*/希望可以帮到你.!

本来就是这样啊,你应该写成。

echo "<a href='phpwan.php?pageno=" . ($pageno+1) . "'>下一页</a>"


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

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

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

随机推荐

  • 悦薇御光赋活系列和悦薇珀翡区别

    资生堂的护肤品这么火,相信大家也用过不少啦,但是还是有很多人分不清悦薇和悦薇珀翡今天小薇就来说下两者的区别:首先,这两个品牌都是资生堂集团滴~不同的是,悦薇是独立品牌,而悦薇珀翡则是资生堂集团旗下的资生堂品牌的一个系列~资生堂(Shisei

    2023-12-14
    9300
  • 汇源果汁退市,细数头部品牌都是怎样没落的

    前面几篇文章,笔者有探讨过“头部品牌怎样炼成”的话题,最近看到汇源果汁退市的消息,不禁感慨万千。在商业的热带雨林里,变化时刻在发生,总是有新物种向着阳光快速奔跑,同样也有强势的老物种悄然衰弱,黯然淡出丛林的中心地带。

    2023-12-14
    9600
  • 优资莱化妆品,怎么样

    ?好用,它是以植物为定位的,安全性非常高,根据你的皮肤你可以选择适合你的系列,皮肤干就用水感系列的,皮肤油就用控油调理水,长痘就用优资莱的祛痘膏效果很好的!每个品牌的护肤品有每个品牌的特点,要看您自己是什么肤质的,根据自己的肤质进行选购,雅

    2023-12-14
    7500
  • 护肤品顺序怎么用

    化妆品正确使用顺序 适合你的护肤品使用顺序:洗面奶--水(干性或混合偏干者用柔肤水,油性皮肤用爽肤水)--乳液(麻烦可以省略)--面霜。 因为你年龄还小,精华和眼霜还不需要,只要定期做些面膜就可以了。你化妆一定要卸妆啊,而且要卸干净,不

    2023-12-14
    6800
  • 阿玛尼是什么档次的牌子 阿玛尼粉底液哪款好用

    阿玛尼是我们大家都非常熟悉的一个化妆品品牌,同时我们也都知道阿玛尼的产品都是比较昂贵的,那么我们便要了解一下阿玛尼是什么档次的牌子?阿玛尼粉底液哪款好用?阿玛尼是什么档次的牌子阿玛尼是世界知名奢侈品牌,也是在美国销量最大的欧洲设计师

    2023-12-14
    7900
  • 怎样推广新品牌化妆品

    以上就是关于怎样推广新品牌化妆品全部的内容,包括:怎样推广新品牌化妆品、新品牌化妆品要怎样进行品牌推广、化妆品销售技巧,如何说服顾客买单等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

    2023-12-13
    6900
  • 淘宝上十几块钱的大牌口红小样是正品吗

    不一定。在化妆品牌内部,“开发小样”是一项重要的营销策略,往往都是配合当季主推的正品,为了方便消费者体验产品,从而购买正品。一般有专人负责小样的设计、生产、流通与跟踪。化妆品小样的容量,普遍都在15ml-5ml之间(精华乳霜类)、5ml-2

    2023-12-13
    7600
  • 片仔癀和皇后牌区别

    片仔癀化妆品是一种老牌的国货药妆产品,距离现在已有很久的历史,同时也积累下了不错的口碑。将片仔癀加入化妆品中可以有效地滋养肌肤和祛痘抗皱,其中较为出名的是皇后牌片仔癀珍珠膏,那么大家是否知道片仔癀和皇后牌的区别呢?片仔癀珍珠膏的主要成分是水

    2023-12-13
    5800
  • 求含激素的护肤品列表

    随着生活水平的提高,大家的爱美意识也越来越高,从日常护理到医美微整再到手术整形。大家的需求随着生活水平的提高也在不断的改变,随之而来的还有各种明星推荐护肤品、达人推荐面膜、以及各种行销账号的铺天盖地推荐,使得人人都能成为“美容专家”,各种护

    2023-12-13
    7000

发表评论

登录后才能评论
保存