<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>【ZenCart】カスタマイズメモ &#187; エラー</title>
	<atom:link href="http://zencart.memoblog.net/category/%e3%82%a8%e3%83%a9%e3%83%bc/feed/" rel="self" type="application/rss+xml" />
	<link>http://zencart.memoblog.net</link>
	<description>ZenCartの設置やカスタマイズ、使い方、制作方法etc.</description>
	<lastBuildDate>Fri, 29 Oct 2010 07:44:46 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>「ご注文の確定」でのInternal Server Error 500 が解決。</title>
		<link>http://zencart.memoblog.net/2009/04/14/%e3%80%8c%e3%81%94%e6%b3%a8%e6%96%87%e3%81%ae%e7%a2%ba%e5%ae%9a%e3%80%8d%e3%81%a7%e3%81%aeinternal-server-error-500-%e3%81%8c%e8%a7%a3%e6%b1%ba%e3%80%82/</link>
		<comments>http://zencart.memoblog.net/2009/04/14/%e3%80%8c%e3%81%94%e6%b3%a8%e6%96%87%e3%81%ae%e7%a2%ba%e5%ae%9a%e3%80%8d%e3%81%a7%e3%81%aeinternal-server-error-500-%e3%81%8c%e8%a7%a3%e6%b1%ba%e3%80%82/#comments</comments>
		<pubDate>Tue, 14 Apr 2009 06:07:57 +0000</pubDate>
		<dc:creator>みやざわ</dc:creator>
				<category><![CDATA[エラー]]></category>
		<category><![CDATA[Internal Server Error]]></category>
		<category><![CDATA[sendmail]]></category>
		<category><![CDATA[smtp]]></category>
		<category><![CDATA[メールの設定]]></category>

		<guid isPermaLink="false">http://zencart.memoblog.net/?p=51</guid>
		<description><![CDATA[追記：2010/4/20
いつの時点からか「注文完了時のメールが届かない」とのご報告をいただいたので、再び SMTP → sendmail に設定を戻しました。今度は Internal Server Error 500 は発生せず、メールも無事届いています。
&#8212;
以前「原因不明のInternal Server Errorが「ご注文の確定」ボタンクリックで発生。」という記事を書きましたが、とりあえず解決したのでメモ。
その後、新規インストールを行ってエラーが出なくなったので良かったと思っていたら再発。集中的に調べてみると、原因は「メールの設定」にありました。
結論から書くと、「メール送信 &#8211; 接続方法」を、sendmailではなくsmtpにしました。これで解決。トホホ…
解決の糸口の糸口は、こちらのZen Cart本家のフォーラムの書き込みにありました。同じ原因かどうかはわかりませんが、書き込みの中で「メールの送信方法を変えてみろ」とあって気づきました。注文完了時に行われる処理の１つは、注文者と管理者にメールが送信されること。今まではsession関連か共有SSLを使っているからかと思い込み、いずれも簡単には探ることができずに、あても無くさまよっていたのですが。。。
「解決した」といっても、じゃあなぜsendmailだとエラーが出るのかは分かっていません。同じサーバで同じデータベースにある同じバージョンのZen Cart、テンプレートもほぼ同じ（ドメインは別）ショップではまだエラーが出ていないんです。そうすると、それこそ原因はZen Cart側ではなくて、このドメインのsendmailの設定ファイルが壊れた？とかメールサーバ側の問題じゃなかろうか、とすら思えてきます。わかりません。
&#8212;
※メール送信 &#8211; 接続方法を「smtp」に変えたら、ページ下部のsmtpアカウント関連の値も設定します。設定しなくてもエラーは出ませんが、メールが送信されません（当たり前か）。
サーバ環境）

レンタルサーバ: エックスサーバー X10（サーバ番号: sv67）
MySQL: 4.0.27-Max（EUC-JP）
ZenCart: 1.3.0.2-l10n-jp-4（EUC-JP）
PHP: 4.3.9
Apache: 2.0.52
OS: Linux
CPU: Core2 Duo E6600 ( 2.40GHz )
Memory: 4GB

]]></description>
			<content:encoded><![CDATA[<p><ins datetime="2010-04-20T06:44:03+00:00">追記：2010/4/20</ins></p>
<p>いつの時点からか「注文完了時のメールが届かない」とのご報告をいただいたので、再び SMTP → sendmail に設定を戻しました。今度は Internal Server Error 500 は発生せず、メールも無事届いています。</p>
<p>&#8212;</p>
<p>以前「<a href="http://zencart.memoblog.net/2008/12/09/原因不明のinternal-server-errorが「ご注文の確定」ボタンクリ/">原因不明のInternal Server Errorが「ご注文の確定」ボタンクリックで発生。</a>」という記事を書きましたが、とりあえず解決したのでメモ。</p>
<p>その後、新規インストールを行ってエラーが出なくなったので良かったと思っていたら再発。集中的に調べてみると、原因は「<strong><span style="color: #ff6600">メールの設定</span></strong>」にありました。</p>
<p>結論から書くと、「<strong><span style="color: #ff6600">メール送信 &#8211; 接続方法</span></strong>」を、sendmailではなく<span style="color: #ff6600"><strong>smtp</strong></span>にしました。これで解決。トホホ…</p>
<p>解決の糸口の糸口は、<a href="http://www.zen-cart.com/forum/showthread.php?t=50328" target="_blank">こちらのZen Cart本家のフォーラムの書き込み</a>にありました。同じ原因かどうかはわかりませんが、書き込みの中で「メールの送信方法を変えてみろ」とあって気づきました。注文完了時に行われる処理の１つは、注文者と管理者にメールが送信されること。今まではsession関連か共有SSLを使っているからかと思い込み、いずれも簡単には探ることができずに、あても無くさまよっていたのですが。。。</p>
<p>「解決した」といっても、じゃあなぜsendmailだとエラーが出るのかは分かっていません。同じサーバで同じデータベースにある同じバージョンのZen Cart、テンプレートもほぼ同じ（ドメインは別）ショップではまだエラーが出ていないんです。そうすると、それこそ原因はZen Cart側ではなくて、このドメインのsendmailの設定ファイルが壊れた？とかメールサーバ側の問題じゃなかろうか、とすら思えてきます。わかりません。</p>
<p>&#8212;</p>
<p>※メール送信 &#8211; 接続方法を「smtp」に変えたら、ページ下部のsmtpアカウント関連の値も設定します。設定しなくてもエラーは出ませんが、メールが送信されません（当たり前か）。</p>
<p>サーバ環境）</p>
<ul>
<li>レンタルサーバ: エックスサーバー X10（サーバ番号: sv67）</li>
<li>MySQL: 4.0.27-Max（EUC-JP）</li>
<li>ZenCart: 1.3.0.2-l10n-jp-4（EUC-JP）</li>
<li>PHP: 4.3.9</li>
<li>Apache: 2.0.52</li>
<li>OS: Linux</li>
<li>CPU:<span> </span>Core2 Duo E6600 ( 2.40GHz )</li>
<li>Memory: 4GB</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://zencart.memoblog.net/2009/04/14/%e3%80%8c%e3%81%94%e6%b3%a8%e6%96%87%e3%81%ae%e7%a2%ba%e5%ae%9a%e3%80%8d%e3%81%a7%e3%81%aeinternal-server-error-500-%e3%81%8c%e8%a7%a3%e6%b1%ba%e3%80%82/feed/</wfw:commentRss>
		<slash:comments>63</slash:comments>
		</item>
		<item>
		<title>phpMyAdminでインポート時にエラー。</title>
		<link>http://zencart.memoblog.net/2009/04/14/phpmyadmin%e3%81%a7%e3%82%a4%e3%83%b3%e3%83%9d%e3%83%bc%e3%83%88%e6%99%82%e3%81%ab%e3%82%a8%e3%83%a9%e3%83%bc%e3%80%82/</link>
		<comments>http://zencart.memoblog.net/2009/04/14/phpmyadmin%e3%81%a7%e3%82%a4%e3%83%b3%e3%83%9d%e3%83%bc%e3%83%88%e6%99%82%e3%81%ab%e3%82%a8%e3%83%a9%e3%83%bc%e3%80%82/#comments</comments>
		<pubDate>Tue, 14 Apr 2009 02:32:38 +0000</pubDate>
		<dc:creator>みやざわ</dc:creator>
				<category><![CDATA[エラー]]></category>
		<category><![CDATA[phpMyAdmin]]></category>
		<category><![CDATA[インポート]]></category>
		<category><![CDATA[シンタックスエラー]]></category>
		<category><![CDATA[データベース]]></category>
		<category><![CDATA[文字化け]]></category>

		<guid isPermaLink="false">http://zencart.memoblog.net/?p=44</guid>
		<description><![CDATA[今、ordersテーブルの情報を古いデータベースから新しいデータベースにインポートしようとしたらエラーが出てインポートできなかったの確認してみると不思議な現象が。
「事業所&#8217;」　…事業所＋シングルクォート
であるべきの顧客情報の住所の一部が↓
「事業洲」　…事業洲（シングルクォートなし）
になっていてシンタックスエラー。文字が置き換わり、シングルクォートが欠けている。原因は不明。エディタで検索置換をかけて問題解決。
サーバ環境）

エックスサーバー
MySQL: 4.0.27-Max（EUC-JP）
ZenCart: 1.3.0.2-l10n-jp-4（EUC-JP）
PHP: 4.3.9
テキストエディタ: mi 2.1.6（MacOS X）

]]></description>
			<content:encoded><![CDATA[<p>今、ordersテーブルの情報を古いデータベースから新しいデータベースにインポートしようとしたらエラーが出てインポートできなかったの確認してみると不思議な現象が。</p>
<p>「<strong><span style="color: #ff6600">事業所&#8217;</span></strong>」　…事業所＋シングルクォート</p>
<p>であるべきの顧客情報の住所の一部が↓</p>
<p>「<span style="color: #ff6600"><strong>事業洲</strong></span>」　…事業洲（シングルクォートなし）</p>
<p>になっていてシンタックスエラー。文字が置き換わり、シングルクォートが欠けている。原因は不明。エディタで検索置換をかけて問題解決。</p>
<p>サーバ環境）</p>
<ul>
<li>エックスサーバー</li>
<li>MySQL: 4.0.27-Max（EUC-JP）</li>
<li>ZenCart: 1.3.0.2-l10n-jp-4（EUC-JP）</li>
<li>PHP: 4.3.9</li>
<li>テキストエディタ: mi 2.1.6（MacOS X）</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://zencart.memoblog.net/2009/04/14/phpmyadmin%e3%81%a7%e3%82%a4%e3%83%b3%e3%83%9d%e3%83%bc%e3%83%88%e6%99%82%e3%81%ab%e3%82%a8%e3%83%a9%e3%83%bc%e3%80%82/feed/</wfw:commentRss>
		<slash:comments>62</slash:comments>
		</item>
		<item>
		<title>原因不明のInternal Server Errorが「ご注文の確定」ボタンクリックで発生。</title>
		<link>http://zencart.memoblog.net/2008/12/09/%e5%8e%9f%e5%9b%a0%e4%b8%8d%e6%98%8e%e3%81%aeinternal-server-error%e3%81%8c%e3%80%8c%e3%81%94%e6%b3%a8%e6%96%87%e3%81%ae%e7%a2%ba%e5%ae%9a%e3%80%8d%e3%83%9c%e3%82%bf%e3%83%b3%e3%82%af%e3%83%aa/</link>
		<comments>http://zencart.memoblog.net/2008/12/09/%e5%8e%9f%e5%9b%a0%e4%b8%8d%e6%98%8e%e3%81%aeinternal-server-error%e3%81%8c%e3%80%8c%e3%81%94%e6%b3%a8%e6%96%87%e3%81%ae%e7%a2%ba%e5%ae%9a%e3%80%8d%e3%83%9c%e3%82%bf%e3%83%b3%e3%82%af%e3%83%aa/#comments</comments>
		<pubDate>Tue, 09 Dec 2008 12:33:24 +0000</pubDate>
		<dc:creator>みやざわ</dc:creator>
				<category><![CDATA[エラー]]></category>
		<category><![CDATA[Internal Server Error]]></category>
		<category><![CDATA[ZenCart]]></category>

		<guid isPermaLink="false">http://zencart.memoblog.net/?p=25</guid>
		<description><![CDATA[Internal Server Errorが発生。以前は問題なく注文完了していたのが、注文プロセス最後の「ご注文の確定」ボタンをクリックすると、エラー。
実際のところ、注文は完了していて、顧客と管理者にもご注文確認メールは届き、管理画面にも新しい注文としてエントリーされている。

管理画面の「セッション管理の設定」をいろいろ変えてみたが変化なし（すべての組み合わせは試せていない）。
ブラウザのキャッシュを空にして再起動は何度も試すが変化なし。
WindowsのInternetExploror、MacのSafari、Firefox 3でも同様。
データベースのsessionテーブルの中身を削除したが変化なし。
原因となりそうなテンプレート（tpl_checkout_confirmation_default.php、tpl_checkout_success_default.php、tpl_time_out_default.php）を入れ替えたが変化なし。
.htaccess、php.iniともに特に変わった記述なし。
SSL（共有SSL）を使わない設定にしても変化なし。
同じサーバ上、同じデータベースに同じバージョンのZenCartが稼働しており、こちらは問題なし。
Googleで検索してもほとんど情報なし。ZenCart本家のBBSで、DBを入れ直したら来た、という書き込みあり（古いスレッドだが）

ここまでくると、再インストールするしかないのだろうか。しかし原因が分かっていないのはスッキリしないし、再発防止もできない。
サーバ情報）

Zen Cart: 1.3.0.2-l10n-jp-3

PHP バージョン: 4.3.9 (Zendのバージョン: 1.3.0)
MySQL: 4.0.27-Max
HTTP サーバ: Apache/2.0.52 (Red Hat)

サーバOS: Linux 2.6.9-78.0.8.ELsmp 

]]></description>
			<content:encoded><![CDATA[<p>Internal Server Errorが発生。以前は問題なく注文完了していたのが、注文プロセス最後の「ご注文の確定」ボタンをクリックすると、エラー。</p>
<p>実際のところ、注文は完了していて、顧客と管理者にもご注文確認メールは届き、管理画面にも新しい注文としてエントリーされている。</p>
<ol>
<li>管理画面の「セッション管理の設定」をいろいろ変えてみたが変化なし（すべての組み合わせは試せていない）。</li>
<li>ブラウザのキャッシュを空にして再起動は何度も試すが変化なし。</li>
<li>WindowsのInternetExploror、MacのSafari、Firefox 3でも同様。</li>
<li>データベースのsessionテーブルの中身を削除したが変化なし。</li>
<li>原因となりそうなテンプレート（tpl_checkout_confirmation_default.php、tpl_checkout_success_default.php、tpl_time_out_default.php）を入れ替えたが変化なし。</li>
<li>.htaccess、php.iniともに特に変わった記述なし。</li>
<li>SSL（共有SSL）を使わない設定にしても変化なし。</li>
<li>同じサーバ上、同じデータベースに同じバージョンのZenCartが稼働しており、こちらは問題なし。</li>
<li>Googleで検索してもほとんど情報なし。ZenCart本家のBBSで、DBを入れ直したら来た、という書き込みあり（古いスレッドだが）</li>
</ol>
<p>ここまでくると、再インストールするしかないのだろうか。しかし原因が分かっていないのはスッキリしないし、再発防止もできない。</p>
<p>サーバ情報）</p>
<ul>
<li><strong>Zen Cart:<span style="font-weight: normal"> 1.3.0.2-l10n-jp-3</span><br />
</strong></li>
<li><strong>PHP バージョン: </strong>4.3.9 (Zendのバージョン: 1.3.0)</li>
<li><strong>MySQL:</strong> 4.0.27-Max</li>
<li><strong><strong>HTTP サーバ: </strong><span style="font-weight: normal">Apache/2.0.52 (Red Hat)</span><br />
</strong></li>
<li><strong>サーバOS: </strong>Linux 2.6.9-78.0.8.ELsmp </li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://zencart.memoblog.net/2008/12/09/%e5%8e%9f%e5%9b%a0%e4%b8%8d%e6%98%8e%e3%81%aeinternal-server-error%e3%81%8c%e3%80%8c%e3%81%94%e6%b3%a8%e6%96%87%e3%81%ae%e7%a2%ba%e5%ae%9a%e3%80%8d%e3%83%9c%e3%82%bf%e3%83%b3%e3%82%af%e3%83%aa/feed/</wfw:commentRss>
		<slash:comments>138</slash:comments>
		</item>
		<item>
		<title>PHP5に移行してログイン出来なくなったら。</title>
		<link>http://zencart.memoblog.net/2008/11/26/php5%e3%81%ab%e7%a7%bb%e8%a1%8c%e3%81%97%e3%81%a6%e3%83%ad%e3%82%b0%e3%82%a4%e3%83%b3%e5%87%ba%e6%9d%a5%e3%81%aa%e3%81%8f%e3%81%aa%e3%81%a3%e3%81%9f%e3%82%89%e3%80%82/</link>
		<comments>http://zencart.memoblog.net/2008/11/26/php5%e3%81%ab%e7%a7%bb%e8%a1%8c%e3%81%97%e3%81%a6%e3%83%ad%e3%82%b0%e3%82%a4%e3%83%b3%e5%87%ba%e6%9d%a5%e3%81%aa%e3%81%8f%e3%81%aa%e3%81%a3%e3%81%9f%e3%82%89%e3%80%82/#comments</comments>
		<pubDate>Wed, 26 Nov 2008 08:51:24 +0000</pubDate>
		<dc:creator>みやざわ</dc:creator>
				<category><![CDATA[ZenCart カスタマイズ]]></category>
		<category><![CDATA[エラー]]></category>
		<category><![CDATA[Fatal error]]></category>
		<category><![CDATA[PHP5]]></category>
		<category><![CDATA[session]]></category>
		<category><![CDATA[ZenCart]]></category>
		<category><![CDATA[ログイン]]></category>
		<category><![CDATA[管理画面]]></category>

		<guid isPermaLink="false">http://zencart.memoblog.net/?p=23</guid>
		<description><![CDATA[以前はログインできていたZenCartの管理画面に、以下のようなエラーが出てログインできなくなった。
Fatal error: Call to a member function Execute() on a non-object in /○○○○/public_html/zencart/includes/functions/strict_sessions.php on line 66
考えられる要因は、使用しているレンタルサーバがPHP4 → PHP5 に強制的に切り替わったこと。
上記エラーで調べたところ下記の対処法を発見。
includes/functions/strict_sessions.php の55行目
&#8212;
【修正前】
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-&#62;connect(DB_SERVER, DB_SERVER_USERNAME, DB_SERVER_PASSWORD, DB_DATABASE, USE_PCONNECT, false);
}
global [...]]]></description>
			<content:encoded><![CDATA[<p>以前は<strong>ログイン</strong>できていた<strong>ZenCart</strong>の<strong>管理画面</strong>に、以下のようなエラーが出てログインできなくなった。<br />
Fatal error: Call to a member function Execute() on a non-object in /○○○○/public_html/zencart/includes/functions/strict_sessions.php on line 66</p>
<p>考えられる要因は、使用しているレンタルサーバがPHP4 → <strong>PHP5</strong> に強制的に切り替わったこと。<br />
上記エラーで調べたところ下記の対処法を発見。</p>
<p>includes/functions/strict_sessions.php の55行目<br />
&#8212;</p>
<p>【修正前】<br />
function _sess_write($key, $val) {<br />
global $db;<br />
global $SESS_LIFE</p>
<p>【修正後】<br />
function _sess_write($key, $val) {<br />
// The following is only to work around a PHP 5.2.0 bug:<br />
global $db; if (!is_object($db)) {<br />
//PHP 5.2.0 bug workaround …<br />
$db = new queryFactory();<br />
$db-&gt;connect(DB_SERVER, DB_SERVER_USERNAME, DB_SERVER_PASSWORD, DB_DATABASE, USE_PCONNECT, false);<br />
}<br />
global $SESS_LIFE;</p>
<p>&#8212;</p>
<p>エラーに遭遇した環境：バージョン）</p>
<ul>
<li>ZenCart 1.3.0.2-l10n-jp-2</li>
<li>MySQL 4.0.24</li>
<li><strong> </strong> PHP 5.2.6</li>
</ul>
<p>参考サイト）</p>
<ul>
<li><a rel="bookmark" href="http://bgs-works.com/blog/?p=8">php5の環境でzen cartをインストールすると出るエラー</a> NIPPON MODE BGS WORKS (2008/1/25)<a rel="bookmark" href="http://bgs-works.com/blog/?p=8"><br />
</a></li>
<li><a href="http://www.minnadenet.com/blog/2008/08/zencart.html" target="_blank">ZenCartでログイン画面に入れない </a>みんなでねっと！のブログ(2008/8/25)</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://zencart.memoblog.net/2008/11/26/php5%e3%81%ab%e7%a7%bb%e8%a1%8c%e3%81%97%e3%81%a6%e3%83%ad%e3%82%b0%e3%82%a4%e3%83%b3%e5%87%ba%e6%9d%a5%e3%81%aa%e3%81%8f%e3%81%aa%e3%81%a3%e3%81%9f%e3%82%89%e3%80%82/feed/</wfw:commentRss>
		<slash:comments>110</slash:comments>
		</item>
	</channel>
</rss>

