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

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

随机推荐

  • 什么品牌的口红防水不退色多少钱

    美国进口‖ Revlon 露华浓新款超级闪亮不脱色丝柔唇彩 8400元安娜苏春之圆舞曲-春季限量魔幻玫瑰口红3色供挑选18500元◆CHANEL香奈尔◆HYDRASOLEIL艳阳亮采口红专柜正品 -网络代理 18500元美国原装

    2023-12-14
    32500
  • 倩碧属于什么档次的护肤品

    倩碧属于雅诗兰黛公司下面的二线化妆品牌,比较知名的产品是碧特效润肤露,也就是大家常说的倩碧黄油,它被称之为美国大宝,一般分为有油和无油两个不同版本。其中有油的含有油脂,适合干性以及中性肌肤使用。无油的比较适合油性皮肤以及混合性皮肤使用。当然

    2023-12-14
    22200
  • 防晒霜什么牌子好用不要有油腻的感觉。

    防晒霜以下牌子好用:1、苏菲娜它的防晒很温和,如它的蓝蕾丝,物理防晒为主化学防晒为辅,成膜速度也挺快的,清爽不油腻,比较顺滑,可以作为日常防护够用了。2、怡思丁它的防晒是网红防晒霜,白色质地,流动性不错,很轻薄,保湿里好,防晒力也不错,应付

    2023-12-14
    29300
  • 雅诗兰黛日晚霜和智研哪个好用

    雅诗兰黛日晚霜和智研两款各有好处,各有优势。红石榴晚霜 50ML功效:抗氧化 提亮祛黄质地:果冻质感的乳霜质地,肉粉色使用感:滋润度较高,触感滑滑的,延展性很好,晚上薄薄擦一层,第二天早上皮肤不油不干,但祛黄效果不明显适合肤质:中干皮全年使

    2023-12-14
    30300
  • muji无印良品美容液怎么样无印良品美容液哪款好

    平价版本的日系美容液——无印良品美容液,这是我逛无印良品的时候偶然遇到的,想着买了水乳知乎还需要加一点什么,下面就为大家介绍一番吧!无印良品美容液怎么样这只美容液是在逛街的时候买到的,当时准备买一瓶肌底液,辅助后期护肤品吸收,后来在

    2023-12-14
    20500
  • 日本护肤品哪个牌子好,日本护肤品哪个牌子好

    身边很多朋友喜欢日代一下日本护肤品,那么日本护肤品哪个牌子好呢,下面是我整理的日本护肤品排行榜,供大家参考! 日本护肤品排行榜 1、Dreamtimes 梦幻时光Dreamtimes目前的M1梦幻三部曲是专门针对亚洲年轻人肌肤

    2023-12-14
    19100
  • 秋冬季节用那个牌子的化妆品补水美白

    个人推荐碧欧泉,因为很好用啊~每个人的肤质都不同,所以用各类护肤品的效果就会不同~碧欧泉的产品含有温泉精华,补水效果很好~碧家的产品真的很不错,有美白、青春、抗皱、除痘等等的系列,分类很细,选择很全面~ 资生堂家的AQUALABEL---水

    2023-12-13
    27300
  • 年纪在24岁肤色偏黄,中性皮肤选什么化妆品怎么样

    功效上,这个季节你的情况要注重选择一些美白防晒的护肤品。化妆品可以选择一款贴近你肤色略浅一点的粉底。至于品牌,建议你用一些知名品牌,具体根据你个人的消费能力选择。24岁很年轻,不需要过分追求太昂贵的护肤品,注意补水,兼顾美白,就可以了。皮肤

    2023-12-13
    30800
  • 韩后护肤品怎么样韩后护肤品孕妇可以用吗

    韩后是著名的护肤品牌,韩后护肤品效果到底怎么样呢?这要看你个人的肤质,不同的肤质所使用的效果也不一样,至于孕妇能够使用也要看护肤品里面的成分了!韩后护肤品怎么样韩后的护肤品还可以,皮肤如果比较不均匀,不够白净的话,推荐茶蕊嫩白系列、有机

    2023-12-13
    20700

发表评论

登录后才能评论
保存