2018-11-13 16:40:10 +00:00
|
|
|
|
<!DOCTYPE html>
|
|
|
|
|
|
<html lang="en">
|
|
|
|
|
|
<head>
|
|
|
|
|
|
<meta charset="UTF-8">
|
|
|
|
|
|
<title>ShopXO安装程序</title>
|
|
|
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
|
|
|
|
<script type="text/javascript" src="./static/js/jquery-2.0.0.min.js"></script>
|
|
|
|
|
|
<link rel="stylesheet" type="text/css" href="./static/bootstrap-3.3.5/css/bootstrap.min.css">
|
|
|
|
|
|
<link rel="stylesheet" type="text/css" href="./static/bootstrap-3.3.5/css/bootstrap-theme.min.css">
|
|
|
|
|
|
<link rel="stylesheet" type="text/css" href="./static/font-awesome-4.4.0/css/font-awesome.min.css">
|
|
|
|
|
|
<link rel="stylesheet" type="text/css" href="./static/css/bjy.css">
|
|
|
|
|
|
<script type="text/javascript" src="./static/bootstrap-3.3.5/js/bootstrap.min.js"></script>
|
|
|
|
|
|
<!--[if lt IE 9]>
|
|
|
|
|
|
<script type="text/javascript" src="./static/js/html5shiv.min.js"></script>
|
|
|
|
|
|
<script type="text/javascript" src="./static/js/respond.min.js"></script>
|
|
|
|
|
|
<![endif]-->
|
|
|
|
|
|
<link rel="stylesheet" href="./static/css/install.css">
|
|
|
|
|
|
<script>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
function TestClick(){
|
|
|
|
|
|
var count = $('#out table tr').length-3;
|
|
|
|
|
|
if($('#out .yes').length != count)
|
|
|
|
|
|
{
|
2018-11-13 16:40:10 +00:00
|
|
|
|
alert('您的配置或权限不符合要求');
|
|
|
|
|
|
}else{
|
|
|
|
|
|
location.href='./index.php?c=create';
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
</script>
|
|
|
|
|
|
</head>
|
|
|
|
|
|
<body>
|
|
|
|
|
|
<div id="nav">
|
|
|
|
|
|
<div class="inside">
|
|
|
|
|
|
<p class="name">ShopXO<span>安装向导</span></p>
|
|
|
|
|
|
<ul class="schedule">
|
|
|
|
|
|
<li class="number">1</li>
|
|
|
|
|
|
<li class="word">使用协议</li>
|
|
|
|
|
|
</ul>
|
|
|
|
|
|
<ul class="schedule active">
|
|
|
|
|
|
<li class="number">2</li>
|
|
|
|
|
|
<li class="word">环境检测</li>
|
|
|
|
|
|
</ul>
|
|
|
|
|
|
<ul class="schedule">
|
|
|
|
|
|
<li class="number">3</li>
|
|
|
|
|
|
<li class="word">创建数据</li>
|
|
|
|
|
|
</ul>
|
|
|
|
|
|
<ul class="schedule">
|
|
|
|
|
|
<li class="number">4</li>
|
|
|
|
|
|
<li class="word">安装完成</li>
|
|
|
|
|
|
</ul>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div id="out">
|
|
|
|
|
|
<div class="inside">
|
|
|
|
|
|
<div class="box test">
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<h2>环境检查</h2>
|
2018-11-13 16:40:10 +00:00
|
|
|
|
<table class="table table-border">
|
|
|
|
|
|
<tr>
|
|
|
|
|
|
<th width="25%">坏境</th>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<th width="25%">程序所需</th>
|
|
|
|
|
|
<th width="25%">当前服务器</th>
|
2018-11-13 16:40:10 +00:00
|
|
|
|
<th width="25%">是否符合</th>
|
|
|
|
|
|
</tr>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<tr class="yes">
|
2018-11-13 16:40:10 +00:00
|
|
|
|
<td>操作系统</td>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<td>无限制</td>
|
2018-11-13 16:40:10 +00:00
|
|
|
|
<td><?php echo php_uname('s'); ?></td>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<td>√</td>
|
2018-11-13 16:40:10 +00:00
|
|
|
|
</tr>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
|
|
|
|
|
|
<?php $php_version = explode('.', PHP_VERSION); ?>
|
|
|
|
|
|
<tr class="<?php if(($php_version['0'] >= 7) || ($php_version['0'] >=5 && $php_version['1'] >=4 ))echo 'yes'; ?>">
|
|
|
|
|
|
<td>PHP版本</td>
|
|
|
|
|
|
<td>>=5.4</td>
|
2018-11-13 16:40:10 +00:00
|
|
|
|
<td><?php echo PHP_VERSION ?></td>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<td>
|
|
|
|
|
|
<?php if(($php_version['0']>=7) || ($php_version['0']>=5 && $php_version['1']>=4)): ?>
|
|
|
|
|
|
√
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
×
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
|
|
|
|
|
|
<?php
|
|
|
|
|
|
$tmp = function_exists('gd_info') ? gd_info() : array();
|
|
|
|
|
|
preg_match("/[\d.]+/", $tmp['GD Version'], $match);
|
|
|
|
|
|
unset($tmp);
|
|
|
|
|
|
?>
|
|
|
|
|
|
<tr class="<?php if($match[0] > 2)echo 'yes'; ?>">
|
|
|
|
|
|
<td>GD库</td>
|
|
|
|
|
|
<td>2.0</td>
|
|
|
|
|
|
<td><?php echo $match[0]; ?></td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<?php if($match[0] > 2): ?>
|
2018-11-13 16:40:10 +00:00
|
|
|
|
√
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
×
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
</table>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
|
|
|
|
|
|
<h2>目录/文件权限检查</h2>
|
2018-11-13 16:40:10 +00:00
|
|
|
|
<table class="table table-border">
|
|
|
|
|
|
<tr>
|
|
|
|
|
|
<th width="25%">坏境</th>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<th width="25%">所需状态</th>
|
|
|
|
|
|
<th width="25%">当前状态</th>
|
2018-11-13 16:40:10 +00:00
|
|
|
|
<th width="25%">是否符合</th>
|
|
|
|
|
|
</tr>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<tr class="<?php if(is_writable('../'))echo 'yes'; ?>">
|
2018-11-13 16:40:10 +00:00
|
|
|
|
<td>./</td>
|
|
|
|
|
|
<td>可写</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<?php if (is_writable('../')): ?>
|
|
|
|
|
|
可写
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
不可写
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<td>
|
2018-11-13 16:40:10 +00:00
|
|
|
|
<?php if (is_writable('../')): ?>
|
|
|
|
|
|
√
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
×
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<tr class="<?php if(is_writable('../Application'))echo 'yes'; ?>">
|
2018-11-13 16:40:10 +00:00
|
|
|
|
<td>./Application</td>
|
|
|
|
|
|
<td>可写</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<?php if (is_writable('../Application')): ?>
|
|
|
|
|
|
可写
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
不可写
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<td>
|
2018-11-13 16:40:10 +00:00
|
|
|
|
<?php if (is_writable('../Application')): ?>
|
|
|
|
|
|
√
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
×
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
2018-11-28 03:39:17 +00:00
|
|
|
|
<tr class="<?php if(is_writable('../AppMini'))echo 'yes'; ?>">
|
|
|
|
|
|
<td>./AppMini</td>
|
|
|
|
|
|
<td>可写</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<?php if (is_writable('../AppMini')): ?>
|
|
|
|
|
|
可写
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
不可写
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<?php if (is_writable('../AppMini')): ?>
|
|
|
|
|
|
√
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
×
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<tr class="<?php if(is_writable('../Application/Common/Conf'))echo 'yes'; ?>">
|
2018-11-13 16:40:10 +00:00
|
|
|
|
<td>./Application/Common/Conf</td>
|
|
|
|
|
|
<td>可写</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<?php if (is_writable('../Application/Common/Conf')): ?>
|
|
|
|
|
|
可写
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
不可写
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<td>
|
2018-11-13 16:40:10 +00:00
|
|
|
|
<?php if (is_writable('../Application/Common/Conf')): ?>
|
|
|
|
|
|
√
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
×
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<tr class="<?php if(is_writable('../Application/Library/Payment'))echo 'yes'; ?>">
|
|
|
|
|
|
<td>./Application/Library/Payment</td>
|
2018-11-13 16:40:10 +00:00
|
|
|
|
<td>可写</td>
|
|
|
|
|
|
<td>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<?php if (is_writable('../Application/Library/Payment')): ?>
|
2018-11-13 16:40:10 +00:00
|
|
|
|
可写
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
不可写
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<td>
|
|
|
|
|
|
<?php if (is_writable('../Application/Library/Payment')): ?>
|
2018-11-13 16:40:10 +00:00
|
|
|
|
√
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
×
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<tr class="<?php if(is_writable('../Public'))echo 'yes'; ?>">
|
|
|
|
|
|
<td>./Public</td>
|
|
|
|
|
|
<td>可写</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<?php if (is_writable('../Public')): ?>
|
|
|
|
|
|
可写
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
不可写
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<?php if (is_writable('../Public')): ?>
|
|
|
|
|
|
√
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
×
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
<tr class="<?php if(is_writable('./'))echo 'yes'; ?>">
|
2018-11-13 16:40:10 +00:00
|
|
|
|
<td>./Install</td>
|
|
|
|
|
|
<td>可写</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<?php if (is_writable('./')): ?>
|
|
|
|
|
|
可写
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
不可写
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<td>
|
2018-11-13 16:40:10 +00:00
|
|
|
|
<?php if (is_writable('./')): ?>
|
|
|
|
|
|
√
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
×
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
</table>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
|
2018-11-28 03:39:17 +00:00
|
|
|
|
<h2>函数/类</h2>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<table class="table table-border">
|
|
|
|
|
|
<tr>
|
|
|
|
|
|
<th width="25%">坏境</th>
|
|
|
|
|
|
<th width="25%">所需状态</th>
|
|
|
|
|
|
<th width="25%">当前状态</th>
|
|
|
|
|
|
<th width="25%">是否符合</th>
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
<tr class="<?php if(function_exists('curl_init'))echo 'yes'; ?>">
|
2018-11-28 03:39:17 +00:00
|
|
|
|
<td>curl_init 函数</td>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<td>支持</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<?php if (function_exists('curl_init')): ?>
|
|
|
|
|
|
支持
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
不支持
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<?php if (function_exists('curl_init')): ?>
|
|
|
|
|
|
√
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
×
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
<tr class="<?php if(function_exists('fsockopen'))echo 'yes'; ?>">
|
2018-11-28 03:39:17 +00:00
|
|
|
|
<td>fsockopen 函数</td>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<td>支持</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<?php if (function_exists('fsockopen')): ?>
|
|
|
|
|
|
支持
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
不支持
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<?php if (function_exists('fsockopen')): ?>
|
|
|
|
|
|
√
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
×
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
<tr class="<?php if(function_exists('mysqli_connect'))echo 'yes'; ?>">
|
2018-11-28 03:39:17 +00:00
|
|
|
|
<td>mysqli_connect 函数</td>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<td>支持</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<?php if (function_exists('mysqli_connect')): ?>
|
|
|
|
|
|
支持
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
不支持
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<?php if (function_exists('mysqli_connect')): ?>
|
|
|
|
|
|
√
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
×
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
<tr class="<?php if(function_exists('file_get_contents'))echo 'yes'; ?>">
|
2018-11-28 03:39:17 +00:00
|
|
|
|
<td>file_get_contents 函数</td>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<td>支持</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<?php if (function_exists('file_get_contents')): ?>
|
|
|
|
|
|
支持
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
不支持
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<?php if (function_exists('file_get_contents')): ?>
|
|
|
|
|
|
√
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
×
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
<tr class="<?php if(function_exists('mb_convert_encoding'))echo 'yes'; ?>">
|
2018-11-28 03:39:17 +00:00
|
|
|
|
<td>mb_convert_encoding 函数</td>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<td>支持</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<?php if (function_exists('mb_convert_encoding')): ?>
|
|
|
|
|
|
支持
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
不支持
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<?php if (function_exists('mb_convert_encoding')): ?>
|
|
|
|
|
|
√
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
×
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
<tr class="<?php if(function_exists('json_encode'))echo 'yes'; ?>">
|
2018-11-28 03:39:17 +00:00
|
|
|
|
<td>json_encode 函数</td>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<td>支持</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<?php if (function_exists('json_encode')): ?>
|
|
|
|
|
|
支持
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
不支持
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<?php if (function_exists('json_encode')): ?>
|
|
|
|
|
|
√
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
×
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
|
|
|
|
|
<tr class="<?php if(function_exists('json_decode'))echo 'yes'; ?>">
|
2018-11-28 03:39:17 +00:00
|
|
|
|
<td>json_decode 函数</td>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<td>支持</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<?php if (function_exists('json_decode')): ?>
|
|
|
|
|
|
支持
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
不支持
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<?php if (function_exists('json_decode')): ?>
|
|
|
|
|
|
√
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
×
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
2018-11-28 03:39:17 +00:00
|
|
|
|
<tr class="<?php if(class_exists('ZipArchive'))echo 'yes'; ?>">
|
|
|
|
|
|
<td>ZipArchive 类</td>
|
|
|
|
|
|
<td>支持</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<?php if (class_exists('ZipArchive')): ?>
|
|
|
|
|
|
支持
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
不支持
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
<td>
|
|
|
|
|
|
<?php if (class_exists('ZipArchive')): ?>
|
|
|
|
|
|
√
|
|
|
|
|
|
<?php else: ?>
|
|
|
|
|
|
×
|
|
|
|
|
|
<?php endif ?>
|
|
|
|
|
|
</td>
|
|
|
|
|
|
</tr>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
</table>
|
2018-11-13 16:40:10 +00:00
|
|
|
|
<p class="agree">
|
|
|
|
|
|
<a class="btn btn-primary" href="./index.php?c=agreement">上一步</a>
|
2018-11-14 04:31:22 +00:00
|
|
|
|
<a class="btn btn-success" href="javascript:;" onclick="TestClick()">下一步</a>
|
2018-11-13 16:40:10 +00:00
|
|
|
|
</p>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
</body>
|
|
|
|
|
|
</html>
|