ecmall mysql.php_ecmall页面空白解决方案汇总
页面空白解决方案:
---------------------------------------------------------------------------------------------
1,到php.ini中打开错误报告,将报错信息贴出来
打开错误报告的方法:将error_reporting 设置为 E_ALL,将display_errors 设置为 On
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2,我把temp入面的folder再set 777就可以了....
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
3,php,mysql,httpd版本问题
++++++++++++++++++++
httpd版本:
[root@bogon jitong360temp]# httpd -v
Server version: Apache/2.2.15 (Unix)
Server built: Dec 8 2011 18:07:26
++++++++++++++++++++
php版本:
[root@bogon jitong360temp]# php -v
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/modules/sqlite3.so' - /usr/lib/php/modules/sqlite3.so: undefined symbol: sqlite3_stmt_readonly in Unknown on line 0
PHP 5.3.14 (cli) (built: Jun 14 2012 18:25:17)
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies
with Zend Guard Loader v3.3, Copyright (c) 1998-2010, by Zend Technologies
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
www.it165.net
4,其实还有一个可能会造成网页空白… 就是填写账号或密码的时候 要避免:/@这关键词!否则会导致数据库连结失败
看data/config.inc.php可以看到
‘DB_CONFIG’ => ‘mysql://username:password@localhost:3306/databasename’,
他是以/@:作分隔!所以只要用到关键词就会出错
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
5,将原有基于 ECMall 2.2 的系统,迁徙到最新的 php 5.3.3 时,出现首页和其它页面都为空白页的情况,调试多次,无果。后查看其 temp/logs/ 下的日志文件,发现是 eccore/model/mysql.php 文件,报时区错误,采用了在 php.ini 中添加时区设置的办法。
在 php.ini 中指定:
date.timezone = Asia/Shanghai
然后,重启 php-fpm ,问题解决。
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
6,从原理上来讲Ecmall的数据调用是以数据模块+模块类库的方式进行mysql数据调用的,所有数据模块都存储在\includes\models 目录下,这些调用对于初学者来讲是比较复杂的,例如商品的数据调用函数,不能用在店铺的数据调用上,每个数据表都有自己的函数自己的类库和少量的公共类库。因此初学者来讲,调用mysql数据很困难。
我现在讲解一个简单的调用方法能满足95%以上的mysql数据调用请求。足够对ecmall进行二次开发。
例子:
$db = &db(); 第一步赋值数据库类库,
$db->query(sql); 第二步执行mysql 语句;
常用的数据库函数
、得到一行数据
$user=$db->getrow("select * from ecm_member where user_id=111");
print_r($user);
、得到一列数据
$user=$db->getcol("select user_id from ecm_member ");
print_r($user);
、得到所有数据
$user=$db->getall("select user_id from ecm_member ");
foreach ( $user as $row)
{
print_r($row);
}
、得到一个数值
$user=$db->getone("select count(*) from ecm_member ");
echo $user;
、执行sql语句
$db->query("update ecm_member set user_name='aaa' ");
、得到最后一个ID
$db->query("insert ecm_member set user_name='aaa' ");
$user_id = $db->insert_id();
echo $user_id;
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
7,ecmall function db()
2011年9月14日 过滤阳光 发表评论阅读评论
由于需要把ecmall代码从一台机器复制到其它机器,我把其中的一些文件删除,本人以为tmp下面的文件全是ecmall生成的缓存文件,和程序代码无关的。后来发现,我的想法是错误的。
把代码复制到新的电脑上时,打开页面一片空白,页面上也没任何的错误信息,以为ecmall把错误信息提示全部关闭了,所以在页面上添加了以下代码,显示错误信息:
ini_set("display_error", 1);
error_reporting(E_ALL);
但是还是没有错误信息输出,只能一步一步的往下调试,终于发现原来错误在一个函数function db();这里。没有错误信息,在函数的return前输出有信息,但是在函数调用的后面输出是空白,一时真没解决方案,原因根本找不到错误原因。自己对ecmall也是刚接触,不是很熟悉。于是在qq群里不断的咨询,很多人都不知所以然。最后有一位高手说让我看看ecmall的错误日志,不看不知道,一看吓一跳,错误日志已经写了好多相同的错误信息,原来是我把mysql类的一个query_caches的文件夹给删除了,导致了mysql操作时无法写入缓存代码。而这些错误已经被ecmall给搜集,不显示在页面上了。
还有一点:ecmall有些写法会在php5.3环境下报错,虽然程序仍然可以运行,但是如果错误信息没有屏蔽的话,会有信息显示
Deprecated: Assigning the return value of new by reference is deprecated
。关闭方法其实很简单,只要把 & 去掉就可以了,如下:
//下面写法在php5.3环境会报错,不影响程序运行
$this->_session =& new SessionProcessor(db(), '`ecm_sessions`', '`ecm_sessions_data`', 'ECM_ID');
//修改成
$this->_session = new SessionProcessor(db(), ecm_sessions`', '`e
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
8,ECmall错误:Call to a member function get_users_count() on a no...
已有 49 次阅读2012-4-27 15:04 |
运行控制器程序时出现 Fatal error:Call to a member function get_users_count() on a non-object in /home/dmg/wwwroot/includes/ecapp.base,不得其解,一步步往上找错误吧,发现这里有问题:
/*
*前台控制器基础类
*/
class FrontendApp extends ECBaseApp
{
function __construct()
{
$this->FrontendApp();
}
function FrontendApp()
{
Lang::load(lang_file('common'));
Lang::load(lang_file(APP)); //问题就出在这里了
parent::__construct();
// 判断商城是否关闭
if (!Conf::get('site_status'))
{
$this->show_warning(Conf::get('closed_reason'));
exit;
}
$this->assign('copyright', Conf::get('copyright'));
$this->_statistic();
}
//省略代码
}
看上面code内标红的位置,调用控制器时会去load一个相应的lang文件,如果控制器为example.app.php,对应的需要在lang文件夹下添加同名的example.lang.php文件,这样问题就解决了。
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
9.已经测试完毕了,是PHP的兼容性问题,5.3.2不适合ECMALL2.2
ecmall mysql.php_ecmall页面空白解决方案汇总相关推荐
- ecmall mysql.php_ecmall框架核心ecmall.php文件详解
//转发至对应的Action //空白方法,未添加功能. $app->destruct(); } } class Object { var $_errors = array(); var $_e ...
- ecmall mysql.php_ECMall支持SSL连接邮件服务器的配置方法详解
首先,主要是ecmall使用的phpmailer版本太低,不支持加密连接. 然后,得对相应代码做一定调整. 1. 覆盖phpmailer 请从附件进行下载: 2. 改造lib 涉及到两个lib:mai ...
- Loadrunner11点击录制脚本无响应,IE页面弹不出——解决方案汇总
Loadrunner11点击录制脚本无响应,IE页面弹不出--解决方案汇总 参考文章: (1)Loadrunner11点击录制脚本无响应,IE页面弹不出--解决方案汇总 (2)https://www. ...
- 关于vue2.0+hbuilder打包移动端app之后空白页面的解决方案
关于vue2.0+hbuilder打包移动端app之后空白页面的解决方案 参考文章: (1)关于vue2.0+hbuilder打包移动端app之后空白页面的解决方案 (2)https://www.cn ...
- h5在ios下拉上拉会带动整个页面出现空白解决方案
** h5 在 ios 快速下拉上拉会带动整个页面出现空白解决方案 ** 查找页面顶层dom(如HTML.body. -),有没有overflow样式,有的话去掉就行了,贼坑
- ThinkPHP3.1在PHP7下页面空白的解决方案
ThinkPHP3.1在PHP7下页面空白的解决方案 浏览:2057 发布日期:2016/06/28 分类:技术分享 先把BUG原因扔出来:模板解析出了问题. 之前一直用PHP5.6做开发,听说过 ...
- ios滚动条影响父页面 vue_在IOS系统上滚动条滚动到指定的位置出现空白页面的解决方案...
在IOS系统上滚动条滚动到指定的位置出现空白页面的解决方案 原因: -webkit-overflow-scrolling:touch 解释: 由于使用-webkit-overflow-scrollin ...
- 配置LNMP遇到的问题(页面空白,不能解析php等)以及fastcgi和php-fom的关系
文章目录 一.前言 二.开始配置LNMP 1.下载php,nginx,mysql等 2.配置nginx 3.启动ngin和php之后,去根目录新建文件 4.页面空白,F12查看请求,在response ...
- SpringCloud分布式事务解决方案汇总收集
SpringCloud分布式事务解决方案汇总收集 分布式事务产生的背景 解决分布式事务的基本思想Base与CAP理论 CAP(帽子原理) BASE理论 柔性事务与刚性事务的区别 理解解决分布式事务核心 ...
最新文章
- curl: (3) [globbing] error: bad range specification after pos 150的解决方法
- BZOJ1415[Noi2005]聪聪和可可——记忆化搜索+期望dp
- 《爬虫与网络编程基础》学习
- 记阿里的一次壮烈牺牲
- 普强“千语”语音识别引擎应用场景
- 嵌入式linux系统移植的四大步骤_基于ARM的Linux系统移植的方法
- ext2文件系统源代码之inode.c
- onlyoffice 回调传参数_onlyoffice服务在线编辑文档保存解析
- 程序员的那些事儿 -- 高级程序员买衣服
- nfc和红外线的区别_比较NFC支付、蓝牙支付、红外线支付技术的优缺点
- Android API统计
- Android 巧用 flexboxLayout 布局
- IT行业的哪些岗位比较有前途?
- C语言初学者需要知道的十句话,听说不知道的人都没学好编程
- 数据挖掘_task2数据探索分析
- 软负载均衡和硬负载均衡
- google pixel 5 激活开发者模式
- 干货 | AI人脸识别之人脸搜索
- Win10设置共享文件夹
- 第四篇、基于Arduino uno,获取土壤湿度传感器的原始值和含水量——结果导向
热门文章
- ARCore+自研引擎,渲染大规模数据
- IE访问HTTPS链接下载文件,IE提示无法下载
- 数据预处理之数据离散化
- perl中的反勾号(``),system和exec
- wordpress-主题商业中国总裁商业思维 培训商学院官网源码整站下载 培训商学院,教育培训官网 培训商学院整站资源
- 工具类JdbcUtils
- 怎么用手机设置(中继器)WIFI信号放大器
- 解决AAPT: error: resource drawable/ (aka xxx) not found
- 使用 Blender 构建虚拟相机以及三维测试场景
- 计算机安排表,计算机系考安排表.doc