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/621330.html

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

随机推荐

  • 我现在 想买化妆品。请问诗莱雅的化妆品怎么样呢

    你 脸上的 肉豆豆,我也有,我问过他们说清洁布到位,我建议你 去买清洁好一点的洗面奶和保湿补水效果好,我现在用的日本进口十二单的东东,上次无意逛街被拉去试的,用了之后感觉还不错,就买了个洗面奶和水,用起来很水润,一点都不油腻,我还准备把乳用

    2023-12-14
    35400
  • 男生做发型的药水分哪些种

    第一位资生堂草本弱碱性电发水、草本直发水系列 容量:118ml(冷烫精)+118ml(中和剂)、150ml(软化剂)+150ml(定型剂) 第二位欧莱雅DV2、离子烫直发膏、果酸冷烫精系列 容量:100ml(冷烫精)+100ml(中和剂)

    2023-12-14
    32700
  • 50多块兰蔻小黑瓶是真的吗能用吗

    是真的可以用。目前兰蔻小黑瓶更新到了第二代,其核心成分依旧是 二裂酵母发酵产物溶胞物 ,另外再搭配酵母提取物。说到发酵产物,其实很多护肤品都会用发酵产物,比如说SKII的pitera。所谓发酵就是利用微生物的代谢,将物质分解、转化成小分子,

    2023-12-14
    21700
  • ohui 化妆品怎么样

    这是一个韩国品牌,是韩国LG公司旗下的高端产品。诞生于1997年。属于比较高的档次,价格也不菲。在中国的销售算是不错的。这个品牌有护肤品、彩妆,产品系列比较齐全,从保湿、美白、抗皱几乎都有相应的系列。产品比较温和这个牌子的护肤品的口碑不错,

    2023-12-14
    22200
  • 娇媚护肤品怎么样

    娇媚护肤品在国产护肤品中属于不错的品牌。娇媚护肤品作为国内体量数一数二的良心国货品牌,一直是以最合适的价格提供超过价位平均水准的产品的。护肤品,即保护皮肤的产品。随着社会经济的不断进步和物质生活的丰富,护肤品,不再是过去只有富人才用的起的东

    2023-12-14
    20800
  • 欧莱雅化妆品效果怎么样,那里能买到正品

    好、欧莱雅彩妆的官方旗舰店。欧莱雅化妆品是世界知名品牌,用户反映使用效果很好,有良好的口碑。在欧莱雅彩妆的官方旗舰店可以买到正品。欧莱雅集团是法国的化妆品公司,创办于1907年。欧莱雅集团是美妆品行业中的领导者,经营范围遍及130多个国家和

    2023-12-14
    22700
  • 美容用的按摩膏有什么作用怎么使用

    按摩膏可以清洁肌肤,促进肌肤的血液循环和新陈代谢的,经常都做按摩是可以有效的防止肌肤的衰老和松弛,还能帮助后续营养渗透吸收。使用步骤:1将按摩膏涂抹至需要按摩的部位 ,用于以下步骤中按摩需要,双手在肩部交替拉抹 展油,上抬风池2双手掌重叠按

    2023-12-13
    20900
  • 用过澳雪沐浴露的,都进来说说效果

    澳雪沐浴露有很多系列,夏天建议用留香小公主系列的,洗完澡特别香,超喜欢的,洗的时候泡沫非常丰富,感觉很干净,然后肌肤也变得很光滑,很水嫩。澳雪主要有 梦幻海马香水沐浴露、留香小公主沐浴露、原果橄榄油滋养沐浴露、健肤护养沐浴露、原果橄油滋养洗

    2023-12-13
    21600
  • 如何内涵姓李的人

    名字是一个人来到这个世界上的身份象征,很多的准爸爸准妈妈们都早早的为孩子起好了名字。 李姓的来源和说法源出嬴姓即认为李氏源出嬴姓,血缘先祖为东夷族首领皋陶(一作咎繇,偃姓或赢姓),皋陶曾被任命为舜的大理(掌管刑法的官)[3-4] ,遂以官命

    2023-12-13
    23400

发表评论

登录后才能评论
保存