来源:自学PHP网 时间:2015-04-15 15:00 作者: 阅读:次
[导读] FengCms Beta 1 20管理这样判断冒是那里不对啊。详细说明:用switch做判断,真的搞不懂程序猿是怎么想的啊,这里的step变量可以控制,导致重装程序。switch($_GET[step]){ case 1: 安装许可协议...
FengCms Beta 1.20 用switch做判断,真的搞不懂程序猿是怎么想的啊,这里的step变量可以控制,导致重装程序。
switch($_GET['step']){ case '1': //安装许可协议 include ABS_PATH."/step/step1.php"; break; case '2': //检查安装环境是否满足要求 $PHP_GD = ''; if(extension_loaded('gd')) { if(function_exists('imagepng')) $PHP_GD .= 'png'; if(function_exists('imagejpeg')) $PHP_GD .= ' jpg'; if(function_exists('imagegif')) $PHP_GD .= ' gif'; } $PHP_JSON = '0'; if(extension_loaded('json')) { if(function_exists('json_decode') && function_exists('json_encode')) $PHP_JSON = '1'; } //新加fsockopen 函数判断,此函数影响安装后会员注册及登录操作。 if(function_exists('fsockopen')) { $PHP_FSOCKOPEN = '1'; } $PHP_DNS = preg_match("/^[0-9.]{7,15}$/", @gethostbyname('www.baidu.cn')) ? 1 : 0; //是否满足FengCms安装需求 $is_right = (phpversion() >= '5.2.0' && extension_loaded('mysql') && $PHP_JSON && $PHP_GD && $PHP_FSOCKOPEN) ? 1 : 0; //配置文件是否存在和可写 $is_config = (is_readable($config_file) && is_writable($config_file)) ? 1 : 0; //上传目录是否可写 $is_upload = (dir_writeable(ROOT_PATH."/upload")) ? 1 : 0; //模块导出目录是否可写 $is_module = (dir_writeable(ROOT_PATH."/upload/module")) ? 1 : 0; //前台缓存目录是否可写 $is_cache = (dir_writeable(ROOT_PATH."/app/cache")) ? 1 : 0; include ABS_PATH."/step/step2.php"; break; case '3': //填写数据库信息 include ABS_PATH."/step/step3.php"; break; case '4': //正在安装 $conn=@mysql_connect($_GET['host'],$_GET['user'],$_GET['password']); if(!$conn){ echo '<script type="text/javascript">alert("链接主机失败,请检查主机地址、用户名和密码是否正确!");history.go(-1);</script>'; exit(); }elseif(intval(mysql_get_server_info($conn))<5){ echo '<script type="text/javascript">alert("您的MYSQL版本为'. mysql_get_server_info($conn).',版本太低,不能安装FengCms!");history.go(-1);</script>'; exit(); }else{ if(!mysql_select_db($_GET['dbname'],$conn)){ //如果数据库不存在,我们就进行创建。 if (!mysql_query("CREATE DATABASE ". $_GET['dbname'] ." default character set utf8;",$conn)) { echo '<script type="text/javascript">alert("数据库不存在,创建不成功");history.go(-1);</script>'; }else{ if(!mysql_select_db($_GET['dbname'],$conn)){ echo '<script type="text/javascript">alert("链接数据库失败,请检查数据库是否正确!");history.go(-1);</script>'; }else{ include "data.php"; } } }else{ include "data.php"; } } break; case '5': //安装完成 include ABS_PATH."/step/step5.php"; break; case '6': //删除安装目录 if(rmdirs(ROOT_PATH.'/install') or rmdir(ROOT_PATH.'/install')){ echo '<script type="text/javascript">alert("删除成功!");close();</script>'; exit(); }else{ echo '<script type="text/javascript">alert("删除失败,请手工删除网站根目录下install目录!");close();</script>'; exit(); } break; }
http://test.com/FengCms%20Beta%201.20/install/index.php?host=localhost&user=root&password=****&dbname=fengcms&prefix=f_&url_type=1&step=4
修复方案:修改判断语句~提醒用户删除可以改成强制。 |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com