ecshop如何解决安装错误问题
虚拟主机问题之ecshop安装过程中“特定目录修改权限检查”出现目录不可修改

虚拟主机问题之ecshop安装过程中“特定目录修改权限检查”出现目录不可修改
在windows2003服务器上安装ecshop到权限检查时,“特定目录修改权限检查”出现了部分目录不可修改的权限问题,详情如下:
模板可写性检查
所有模板,全部可写
特定目录修改权限检查
temp/caches 不可修改
temp/compiled 不可修改
temp/compiled/admin 不可修改
images/200810 不可修改
上网找过一些资料,只说权限不够,需要给IIS用户组加上…修改‟权限。
也有说VPS网站放C盘,怎么改都不行;
还有说加了Everyone完全控制都不行的。
当时很难过,以为ECSHOP有这么个缺陷。
为了查明真像,我用VitrtualBox装了win2003虚拟机测试,只设一个C盘,用各种权限测试,发现其实是要给Users用户组加上修改权限就可以了。
而所谓不能放C盘及Everyone所有权限都不行的情况并不存在。
此问题的关键之处在于,需要加…修改‟权限的是…Users‟用户组,而非网上流传的IIS用户组。
当然,这种权限问题只存在于Win2003+IIS并且网页目录是NTFS格式的情况。
我试过Window2003+Apache2.2的时候,只要模板目录的写入权限就可以了。
ecshop适应在PHP7的修改方法解决报错的实现

ecshop适应在PHP7的修改⽅法解决报错的实现ecshop这个系统,到⽬前也没见怎么推出新版本,如果是新项⽬,不太建议使⽤它。
不过,因为我⼀直以来都在使⽤中,所以不得不更改让其适应PHP新版本。
现在PHP 7已经出发⾏版了,所以更改来继续使⽤吧。
具体的更改有以下⽅⾯:(1)将mysql扩展的使⽤替换掉,改为使⽤mysqli或pdo:从php5.5开始,mysql扩展将废弃了。
具体更改的⽂件在于includes/cls_mysql.php。
这是个不⼩的⼯程,⽂件代码太长……if (!defined('DITAN_ECS')){die('Hacking attempt');}class cls_mysql{var $link_id = NULL;var $settings = array();var $queryCount = 0;var $queryTime = '';var $queryLog = array();var $max_cache_time = 300; // 最⼤的缓存时间,以秒为单位var $cache_data_dir = 'temp/query_caches/';var $root_path = '';var $error_message = array();var $platform = '';var $version = '';var $dbhash = '';var $starttime = 0;var $timeline = 0;var $timezone = 0;// 事务指令数protected $transTimes = 0;var $mysql_config_cache_file_time = 0;var $mysql_disable_cache_tables = array(); // 不允许被缓存的表,遇到将不会进⾏缓存function __construct($dbhost, $dbuser, $dbpw, $dbname = '', $charset = 'gbk', $pconnect = 0, $quiet = 0){$this->cls_mysql($dbhost, $dbuser, $dbpw, $dbname, $charset, $pconnect, $quiet);}function cls_mysql($dbhost, $dbuser, $dbpw, $dbname = '', $charset = 'gbk', $pconnect = 0, $quiet = 0){if (defined('EC_CHARSET')){$charset = strtolower(str_replace('-', '', EC_CHARSET));}if (defined('ROOT_PATH') && !$this->root_path){$this->root_path = ROOT_PATH;}if ($quiet){$this->connect($dbhost, $dbuser, $dbpw, $dbname, $charset, $pconnect, $quiet);}else{$this->settings = array('dbhost' => $dbhost,'dbuser' => $dbuser,'dbpw' => $dbpw,'dbname' => $dbname,'charset' => $charset,'pconnect' => $pconnect);}}function connect($dbhost, $dbuser, $dbpw, $dbname = '', $charset = 'utf8', $pconnect = 0, $quiet = 0){if ($pconnect){$this->link_id = new mysqli('p:'.$dbhost, $dbuser, $dbpw);if ($this->link_id->connect_error){if (!$quiet){$this->ErrorMsg("Can't pConnect MySQL Server($dbhost)!");}return false;}}else{$this->link_id = new mysqli($dbhost, $dbuser, $dbpw);if ($this->link_id->connect_error){if (!$quiet){$this->ErrorMsg("Can't Connect MySQL Server($dbhost)!");}return false;}}$this->dbhash = md5($this->root_path . $dbhost . $dbuser . $dbpw . $dbname);$this->version = $this->link_id->server_version;/* 对字符集进⾏初始化 */$this->link_id->set_charset($charset);$this->link_id->query("SET sql_mode=''");$sqlcache_config_file = $this->root_path . $this->cache_data_dir . 'sqlcache_config_file_' . $this->dbhash . '.php';@include($sqlcache_config_file);$this->starttime = time();if ($this->max_cache_time && $this->starttime > $this->mysql_config_cache_file_time + $this->max_cache_time){if ($dbhost != '.'){$result = $this->link_id->query("SHOW VARIABLES LIKE 'basedir'");$row = $result->fetch_array(MYSQLI_ASSOC);$result->free();if (!empty($row['Value']{1}) && $row['Value']{1} == ':' && !empty($row['Value']{2}) && $row['Value']{2} == "/"){$this->platform = 'WINDOWS';}else{$this->platform = 'OTHER';}}else{$this->platform = 'WINDOWS';}if ($this->platform == 'OTHER' &&($dbhost != '.' && strtolower($dbhost) != 'localhost:3306' && $dbhost != '127.0.0.1:3306') ||date_default_timezone_get() == 'UTC'){$result = $this->link_id->query("SELECT UNIX_TIMESTAMP() AS timeline, UNIX_TIMESTAMP('" . date('Y-m-d H:i:s', $this->starttime) . "') AS timezone");$row = $result->fetch_array(MYSQLI_ASSOC);$result->free();if ($dbhost != '.' && strtolower($dbhost) != 'localhost:3306' && $dbhost != '127.0.0.1:3306'){$this->timeline = $this->starttime - $row['timeline'];}if (date_default_timezone_get() == 'UTC'){$this->timezone = $this->starttime - $row['timezone'];}}$content = '<' . "?php\r\n" .'$this->mysql_config_cache_file_time = ' . $this->starttime . ";\r\n" .'$this->timeline = ' . $this->timeline . ";\r\n" .'$this->timezone = ' . $this->timezone . ";\r\n" .'$this->platform = ' . "'" . $this->platform . "';\r\n?" . '>';@file_put_contents($sqlcache_config_file, $content);}/* 选择数据库 */if ($dbname){if ($this->link_id->select_db($dbname) === false ){if (!$quiet){$this->ErrorMsg("Can't select MySQL database($dbname)!");}return false;}else{return true;}}else{return true;}}function select_database($dbname){return $this->link_id->select_db($dbname);}function set_mysql_charset($charset){if (in_array(strtolower($charset), array('gbk', 'big5', 'utf-8', 'utf8'))){$charset = str_replace('-', '', $charset);}$this->link_id->set_charset($charset);}function fetch_array($query, $result_type = MYSQLI_ASSOC){$row = $query->fetch_array($result_type);$query->free();return $row;}function query($sql, $type = ''){if ($this->link_id === NULL){$this->connect($this->settings['dbhost'], $this->settings['dbuser'], $this->settings['dbpw'], $this->settings['dbname'], $this->settings['charset'], $this->settings['pconnect']); $this->settings = array();}if ($this->queryCount++ <= 99){$this->queryLog[] = $sql;}if ($this->queryTime == ''){if (PHP_VERSION >= '5.0.0'){$this->queryTime = microtime(true);}else{$this->queryTime = microtime();}}/* 当当前的时间⼤于类初始化时间的时候,⾃动执⾏ ping 这个⾃动重新连接操作 */if (time() > $this->starttime + 1){$this->link_id->ping();}if (!($query = $this->link_id->query($sql)) && $type != 'SILENT'){$this->error_message[]['message'] = 'MySQL Query Error';$this->error_message[]['sql'] = $sql;$this->error_message[]['error'] = $this->link_id->error;$this->error_message[]['errno'] = $this->link_id->errno;$this->ErrorMsg();return false;}if (defined('DEBUG_MODE') && (DEBUG_MODE & 8) == 8){$logfilename = $this->root_path . DATA_DIR . '/mysql_query_' . $this->dbhash . '_' . date('Y_m_d') . '.log'; $str = $sql . "\n\n";if (PHP_VERSION >= '5.0'){file_put_contents($logfilename, $str, FILE_APPEND);}else{$fp = @fopen($logfilename, 'ab+');if ($fp){fwrite($fp, $str);fclose($fp);}}}return $query;}function affected_rows(){return $this->link_id->affected_rows;}function error(){return $this->link_id->error;}function errno(){return $this->link_id->errno;}function result($query, $row){$query->data_seek($row);$result = $query->fetch_row();$query->free();return $result;}function num_rows($query){return $query->num_rows;}function num_fields($query){return $this->link_id->field_count;}function free_result($query){return $query->free();}function insert_id(){return $this->link_id->insert_id;}function fetchRow($query){return $query->fetch_assoc();}function fetch_fields($query){return $query->fetch_field();}function version(){return $this->version;}function ping(){return $this->link_id->ping();}function escape_string($unescaped_string){return $this->link_id->real_escape_string($unescaped_string);}function close(){return $this->link_id->close();}function ErrorMsg($message = '', $sql = ''){if ($message){echo "<b>DTXB info</b>: $message\n\n<br /><br />";//print('<a href="/?type=mysql&dberrno=2003&dberror=Can%27t%20connect%20to%20MySQL%20server%20on" target="_blank">/</a>');}else{echo "<b>MySQL server error report:";print_r($this->error_message);//echo "<br /><br /><a href='/?type=mysql&dberrno=" . $this->error_message[3]['errno'] . "&dberror=" . urlencode($this->error_message[2]['error']) . "' target='_blank'>/</a>"; }exit;}/* 仿真 Adodb 函数 */function selectLimit($sql, $num, $start = 0){if ($start == 0){$sql .= ' LIMIT ' . $num;}else{$sql .= ' LIMIT ' . $start . ', ' . $num;}return $this->query($sql);}function getOne($sql, $limited = false){if ($limited == true){$sql = trim($sql . ' LIMIT 1');}$res = $this->query($sql);if ($res !== false){$row = $res->fetch_row();$res->free();if ($row !== false){return $row[0];}else{return '';}}else{return false;}}function getOneCached($sql, $cached = 'FILEFIRST'){$sql = trim($sql . ' LIMIT 1');$cachefirst = ($cached == 'FILEFIRST' || ($cached == 'MYSQLFIRST' && $this->platform != 'WINDOWS')) && $this->max_cache_time;if (!$cachefirst){return $this->getOne($sql, true);}else{$result = $this->getSqlCacheData($sql, $cached);if (empty($result['storecache']) == true){return $result['data'];}}$arr = $this->getOne($sql, true);if ($arr !== false && $cachefirst){$this->setSqlCacheData($result, $arr);}return $arr;}function getAll($sql){$res = $this->query($sql);if ($res !== false){$arr = $res->fetch_all(MYSQLI_ASSOC);$res->free();return $arr;}else{return false;}}function getAllCached($sql, $cached = 'FILEFIRST'){$cachefirst = ($cached == 'FILEFIRST' || ($cached == 'MYSQLFIRST' && $this->platform != 'WINDOWS')) && $this->max_cache_time; if (!$cachefirst){return $this->getAll($sql);}else{$result = $this->getSqlCacheData以上就是⼩编为⼤家带来的ecshop适应在PHP7的修改⽅法解决报错的实现全部内容了,希望⼤家多多⽀持~。
产品安装错误处理流程与注意事项

产品安装错误处理流程与注意事项下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。
文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by theeditor. I hope that after you download them,they can help yousolve practical problems. The document can be customized andmodified after downloading,please adjust and use it according toactual needs, thank you!In addition, our shop provides you with various types ofpractical materials,such as educational essays, diaryappreciation,sentence excerpts,ancient poems,classic articles,topic composition,work summary,word parsing,copy excerpts,other materials and so on,want to know different data formats andwriting methods,please pay attention!一、产品安装错误处理流程1. 错误识别:在安装产品时,仔细观察安装过程中出现的任何错误提示、警告信息或异常现象。
虚拟主机安装ecshop提示"安装数据错误"的解决办法

虚拟主机安装ecshop提示"安装数据错误"的解决办法
虚拟主机安装ecshop提示"安装数据错误"的解决办法
安装ecshop V2.6版需要安装先安装UC,利用虚拟主机控制面板的预装软件功能,预装ecshop后,请先访问http://您的域名/uc/install/index.php先安装UC,然后才能进行Ecshop 的安装。
特别提示:因为试用虚拟主机默认有IP限制,这会导致ecshop 安装时提示"安装数据错误",解决办法是在虚拟主机控制面板点"IP限制",将您申请的虚拟主机的IP地址添加上去,然后再进行ecshop的安装,就不会出错了.
安装discuz6.1如果遇到UC连接失败,也是相同的解决方案.。
php高版本安装ECShop错误解决办法

学习使人进步1、Strict Standards: Non-static method cls_image::gd_version() should not be called statically in F:\xampp\htdocs\ceshi\includes\lib_base.php on line 346找到\lib_base.php 第346行将它注释//return cls_image::gd_version();添加$p = new cls_image();return $p->gd_version(); 即可2、Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in F:\xampp\htdocs\ceshi\includes\cls_template.php on line 300找到\lib_template.php 第300行将它注释//return preg_replace("/{([^\}\{\n]*)}/e", "\$this->select('\\1');", $source); 添加return preg_replace_callback("/{([^\}\{\n]*)}/", function($r){return $this->select($r[1]);}, $source); 即可3、Strict Standards: Only variables should be passed by reference in F:\xampp\htdocs\ceshi\includes\cls_template.php on line 422找到\lib_template.php 第422行将它注释//$tag_sel = array_shift(explode(' ', $tag));添加$tag_arr = explode(' ', $tag);$tag_sel = array_shift($tag_arr); 即可4、Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in F:\xampp\htdocs\ceshi\includes\cls_template.php on line 1074找到\lib_template.php 第1074行//$pattern = '/<!--\s#BeginLibraryItem\s\"\/(.*?)\"\s-->.*?<!--\s#EndLibraryItem\s-->/se';// $replacement = "'{include file='.strtolower('\\1'). '}'";//$source = preg_replace($pattern, $replacement, $source);添加$pattern = '/<!--\s#BeginLibraryItem\s\"\/(.*?)\"\s-->.*?<!--\s#EndLibraryItem\s-->/s'; $replacement = function($r){return '{include file='.strtolower($r[1]). '}';}; $source = preg_replace_callback($pattern, $replacement, $source); 即可5、Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in F:\xampp\htdocs\ceshi\includes\cls_template.php on line 496找到\lib_template.php 第496行将它注释//$out = "<?php \n" . '$k = ' . preg_replace("/(\'\\$[^,]+)/e" , "stripslashes(trim('\\1','\''));", var_export($t, true)) . ";\n";添加$out = "<?php \n" . '$k = ' . preg_replace_callback("/(\'\\$[^,]+)/", function(){return stripslashes(trim('\\1','\''));}, var_export($t, true)) . ";\n";即可6、Strict Standards: Only variables should be passed by reference in F:\xampp\htdocs\ceshi\includes\lib_main.php on line 1329找到\lib_main.php 第1329行将它注释// $ext = end(explode('.', $tmp));添加$ext = explode('.', $tmp);$ext = end($ext);即可7、Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in F:\xampp\htdocs\ceshi\includes\cls_template.php on line 556找到\lib_template.php 第556行//$val = preg_replace("/\[([^\[\]]*)\]/eis", "'.'.str_replace('$','\$','\\1')", $val);添加$val =preg_replace_callback("/\[([^\[\]]*)\]/is", function(){return '.'.str_replace('$','\$','\\1');}, $val); 即可8、Strict Standards: Declaration of vbb::set_cookie() should be compatible with integrate::set_cookie($username = '', $remember = NULL)子类的函数跟父类的同名,必须使子类的函数参数跟父类的对应函数参数个数相同依据错误提示,修改例如:function set_cookie ($username="")改为function set_cookie ($username="", $remember = NULL)9、Strict Standards: mktime(): You should be using the time() function instead in F:\xampp\htdocs\ceshi\admin\sms_url.php on line 31将$auth = mktime();替换为$auth = time();10、Strict Standards: Redefining already defined constructor for class alipay in F:\xampp\htdocs\ceshi\includes\modules\payment\alipay.php on line 85PHP 类,有两种构造函数,一种是跟类同名的函数,一种是____construct()。
ECSHOP本地安装提示MYSQL?JPEG?PNG?不支持问题解决方...

ECSHOP本地安装提示MYSQL JPEG PNG 不支持问题解决
方...
ECSHOP本地安装提示MYSQL JPEG PNG 不支持的问题,相信不少新手安装时都遇到过,主要是因为PHP配置不正确。
安装PHP 后先将php.ini-dist改名字为php.ini,然后在该文件中修改extension_dir = "D:\PHP\ext"
将其路径指到你的PHP 目录下的 extensions 目录,即本范例的D:\PHP\ext(我的PHP 安装在D:\PHP目录中)。
再将该配置文件中其他需要用的扩展配置打开,具体如下
在php.ini这个文件中设置
一般都需要将下面这些扩展前面的;去掉
extension=php_mysql.dll
extension=php_mysqli.dll
//支持数据库的
extension=php_gd2.dll
支持生成gif、jpg、png图的
还有下面一些也需要去掉
extension=php_zip.dll
extension=php_sockets.dll
extension=php_mbstring.dll
extension=php_exif.dll
extension=php_mcrypt.dll
extension=php_imap.dll
PHP安全模式是否被启用:
查找 php.ini 配置文件中 safe_mode 将它的值设为 Off 或者 on;
这样就OK 了。
解决ECSHOP“StrictStandards:Non

解决ECSHOP“StrictStandards:Non解决ECSHOP"Strict Standards: Non-static methodcls_image"问题老蒋前面刚解决"解决ECSHOP出现"Deprecated:preg_replace()"报错提示问题",不过再次刷新页面又出现新的问题"Strict Standards: Non-static methodcls_image::gd_version() should not be called statically in",看这次是gd_version函数问题。
解决方法:include/cls_image.php将这一行:function gd_version()改成static function gd_version()然后替换文件之后刷新就解决问题。
ECShop 3.0安装出现错误:Non-static methodcls_image::gd_version()2014-06-18 15:10:59来源:威易网作者:icechECShop可以说是比较早的电商程序了,那个时候的运行环境在PHP 5.3及其以下版本。
不过目前流行的都是PHP 5.4版本,所以安装后运行就出现了一些小的错误。
ECShop可以说是比较早的电商程序了,那个时候的运行环境在PHP 5.3及其以下版本。
不过目前流行的都是PHP 5.4版本,所以安装后运行就出现了一些小的错误。
Strict Standards: Non-static method cls_image::gd_version() should not be called statically in E:\web\shopex\includes\lib_base.php on line 346PHP 5.3版本以上会出现这个错误。
ECShop安装说明与安装步骤(图文)

以下分为2部分文档1和文档2,可任选其一,都能安装成功。
文档1:ECShop“安装说明”与“安装步骤”文档2:ECShop“安装说明”与“安装步骤”演示文档1:ECShop“安装说明”与“安装步骤”1. 系统需求•操作平台不限,推荐使用linux,以获得更好的性能•可提供web服务的服务器,推荐web服务器使用apache•PHP版本等于或大于4.1.0,支持MySQL数据库,推荐使用4.4 或者5.1 系列的最新版本[可选方案:支持GD库,就可使用自动生成商品缩略图功能]•MySQL (3.23 或者更高版本),推荐使用4.1 或者5.0 系列的最新版本2.快速安装你可以通过下面的步骤进行快速的安装。
2.1 下载ECSHOP软件包请到下载最新的ECSHOP软件包。
2.2 解压缩ECSHOP软件包,并上传到服务器ECSHOP软件包使用普通解压缩软件(如WinRAR)就可解压缩。
将解压缩文件上传到服务器指定目录,该目录要求在浏览器中能够访问。
2.3 修改目录权限文件上传到服务器后,需要更改几个目录权限才能保证ECSHOP的正常运行o data/ 目录及其所有子目录o temp/ 目录及其所有子目录o cert/ 目录o includes/ 目录及其所有子目录o images/ 目录及其所有子目录o themes/ 目录及其所有子目录以上目录、文件在网站运行过程中会被动态更新,因此需确保可以向以上目录、文件写写入数据。
可以使用以下方法:o你可以使用ftp软件将以上目录及其子目录、文件属性设置为777o linux平台下你有shell权限则通过执行chmod来修改目录权限。
o windows平台下,一般默认就可读写,不用设置2.4 开始安装在浏览器中访问http://你的网址/,根据页面提示填写参数。
安装程序将自动完成config.php文件配置。
填写参数时注意以下几点:o若不清楚mysql服务器地址,用户名,密码,数据库名可向虚拟空间提供商咨询。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ecshop如何解决安装错误问题
ECSHOP开发中心()
介绍一下如何解决ecshop在安装的时候出现以下错误
Warning: session_start() [function.session-start]: open(C:\Windows\TEMP\\sess_5d66a7d358cb993f9b2be77a182b10af, O_RDWR) failed: Permission denied (13) in D:\1\24421701\html\install\index.php on line 23
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at D:\1\24421701\html\install\index.php:23) in D:\1\24421701\html\install\index.php on line 23
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at D:\1\24421701\html\install\index.php:23) in D:\1\24421701\html\install\index.php on line 23
Warning: session_start() [function.session-start]: open(C:\Windows\TEMP\\sess_91d3db5d5514ad82b97f7d2ce047a4e1, O_RDWR) failed: Permission denied (13) in D:\1\24421701\html\install\cloud.php on line 18
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at D:\1\24421701\html\install\cloud.php:18) in D:\1\24421701\html\install\cloud.php on line 18
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at D:\1\24421701\html\install\cloud.php:18) in D:\1\24421701\html\install\cloud.php on line 18
Warning: Invalid argument supplied for foreach() in D:\1\24421701\html\install\cloud.php on line 41
解决办法:联系你的服务器商解决C:\Windows\TEMP,这个文件的权限即可
【ECSHOP开发中心】。