Zencart1.3から1.5に移植すると注文履歴が正常に表示されない……  【解決済み】

困った時はこちらで質問してください。回答を担当する人は特に決まっていませんので、分かる方は回答をお願いします。
アバター
moitaro
記事: 92
登録日時: 2015/10/27 11:10

Zencart1.3から1.5に移植すると注文履歴が正常に表示されない……

投稿記事by moitaro » 2016/6/21 17:01

本当に度々お世話になっております。

viewtopic.php?t=6146
を参考にして
1.3から1.5へ移植をしております。

上記URLの通りにやったつもりなのですが
注文しても注文完了メールは届くのですが
注文履歴に溜まりません。

dbを見てみると
その注文をしたものは入っているので
/index.php?main_page=account
を呼んでいる際に読めなかったのかと思い
\includes\modules\pages\account\header_php.php
を見ても
--------
$orders_query = "SELECT o.orders_id, o.date_purchased, o.delivery_name,
o.delivery_country, o.billing_name, o.billing_country,
ot.text as order_total, s.orders_status_name
FROM " . TABLE_ORDERS . " o, " . TABLE_ORDERS_TOTAL . " ot, " . TABLE_ORDERS_STATUS . " s
WHERE o.customers_id = :customersID
AND o.orders_id = ot.orders_id
AND ot.class = 'ot_total'
AND o.orders_status = s.orders_status_id
AND s.language_id = :languagesID
ORDER BY orders_id DESC LIMIT 3";

echo " $orders_query<br>\r\n";

$orders_query = $db->bindVars($orders_query, ':customersID', $_SESSION['customer_id'], 'integer');
$orders_query = $db->bindVars($orders_query, ':languagesID', $_SESSION['languages_id'], 'integer');

echo " $orders_query<br>\r\n";

$orders = $db->Execute($orders_query);

$ordersArray = array();

//空……
print_r($ordersArray);
--------

と怪しい所はこちらだと思いますが
--------
SELECT o.orders_id, o.date_purchased, o.delivery_name,
o.delivery_country, o.billing_name, o.billing_country,
ot.text as order_total, s.orders_status_name
FROM orders o, orders_total ot, orders_status s
WHERE o.customers_id = 1
AND o.orders_id = ot.orders_id
AND ot.class = 'ot_total'
AND o.orders_status = s.orders_status_id
AND s.language_id = 2
ORDER BY orders_id DESC LIMIT 3
--------
とSQLをphpMyadminで打ってみても
--------
返り値が空でした (行数 0)。 (クエリの実行時間 0.0005 秒)
--------
となっており原因が分かりません。

/index.php?main_page=account
で注文履歴が表示されない問題解決のとっかかりをご助力頂けないでしょうか?

お忙しい中申し訳ないのですが上記書き込みさせて頂きます。
アバター
moitaro
記事: 92
登録日時: 2015/10/27 11:10

Zencart1.3から1.5に移植すると注文履歴が正常に表示されない……

投稿記事by moitaro » 2016/6/21 17:33

orders の orders_status がorders_status の orders_status_id
だったら
表示する の部分でNGだった模様……
`orders`には orders_status というのが1
だったため表示されていないようでした。

1ってドコのstatusを見ているのか謎ですけど理由が分かりました。

解決方法は分かりませんが……


相変わらずのトピ汚し失礼しました。

もうちょっと見てみます。
アバター
moitaro
記事: 92
登録日時: 2015/10/27 11:10

Zencart1.3から1.5に移植すると注文履歴が正常に表示されない……

投稿記事by moitaro » 2016/6/22 10:55

AND o.orders_status = s.orders_status_id #←が不味い……
`orders`のorders_status と`orders_status`のorders_status_id
1だった 4……
でこの値を変更する所は
/index.php?main_page=checkout_success
だと思ったので
\includes\modules\pages\checkout_success\header_php.php
かと思ったのですがSELECT文しか見つからず

INSERTやUPDATEやorders_statusでGrepしてみたのですが
それっぽいのが見つからず困っております。

購入した際
DBの登録はZencartではどのようにやっているか伺ってよろしいでしょうか?

もしかして1.3から1.5になった時に1というのが新規で出来たのでしょうか?
アバター
moitaro
記事: 92
登録日時: 2015/10/27 11:10

Zencart1.3から1.5に移植すると注文履歴が正常に表示されない……  【解決済み】

投稿記事by moitaro » 2016/6/22 13:39

分かりました。
管理画面>ローカライズ>注文ステータス設定
で出来ました。

トピ汚し大変失礼しました。
アバター
kimono
記事: 1995
登録日時: 2005/9/27 13:30
お住まい: 大阪府大阪市天王寺区上本町
連絡を取る:

Zencart1.3から1.5に移植すると注文履歴が正常に表示されない……

投稿記事by kimono » 2016/7/08 18:22

こんにちわ。kimonoです :)

無事できた模様で、よかったです。

注文ステータスは増やした場合、新サイトでもきちんと増やしておきませんと、表示できなくなったりしますね。

“Zen Cart 質問コーナー” へ戻る