WEBサイト作成時に発生するエラーやトラブル対応の備忘録を中心に、いろいろと書いております。


ログインできない(Call to a member function Execute)

zen-cartを試すのは、2年ぶりですね……。
EC-CUBEで済むならいいのですけど、商品点数とか規格などが多すぎるとパフォーマンスに心配ありです。zen-cartも試すことにしてみました!

zencartのテスト環境はXAMPP 1.6
PHP 5.2.5  | mysql 5.0.51a |  zen-cart v1.3.0.2日本語版

インストール後、トップページに
Fatal error: Call to a member function Execute() on a non-object in C:\xampp\htdocs\zen\includes\functions\strict_sessions.php on line 66

というエラー。そして、管理画面にも同じエラー。

zen-cartのフォーラムを見ると、PHP5.2.5が原因のようです。

php4.4.7 → php5.2.5 への切替 を参考に下記対策をしてみました。

includes\functions\strict_sessions.php の L55あたりから

function _sess_write($key, $val) {
global $db;
global $SESS_LIFE;

function _sess_write($key, $val) {
ツꀀツꀀツꀀツꀀツꀀ // The following is only to work around a PHP 5.2.0 bug:
ツꀀツꀀツꀀツꀀツꀀ global $db;
ツꀀツꀀツꀀツꀀツꀀ if (!is_object($db)) {
ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ //PHP 5.2.0 bug workaround …
ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ $db = new queryFactory();
ツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀツꀀ $db->connect(DB_SERVER, DB_SERVER_USERNAME, DB_SERVER_PASSWORD, DB_DATABASE, USE_PCONNECT, false);
ツꀀツꀀツꀀツꀀツꀀ }
ツꀀツꀀツꀀツꀀツꀀ global $SESS_LIFE;

へ。

一応これで直りましたが、どうも応急処置とのことですが……。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください