バージョン選択

フォーラム

メニュー

オンライン状況

19 人のユーザが現在オンラインです。 (9 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 19
もっと...

サイト内検索

質問 > フロント機能 > 商品一覧ページのソートに「ランダム」を加えたい

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
tmtqn543
投稿日時: 2009/10/28 16:08
対応状況: −−−
一人前
登録日: 2008/12/26
居住地: 長野県諏訪郡原村
投稿: 108
商品一覧ページのソートに「ランダム」を加えたい
いつも大変お世話になっています。

現在、商品一覧ページのソートに「ランダム」を加えたいと思い、試行錯誤しております。
過去の記事を参考に以下のように設定しましたところ・・、

●LC_Page_Products_List_Ex.php
---
(略)

//表示順序
switch($orderby) {

//ランダム
case 'random':
$col = "DISTINCT price02_min, product_id, product_code_min, product_code_max,"
. " name, comment1, comment2, comment3,"
. " main_list_comment, main_image, main_list_image,"
. " price01_min, price01_max, price02_max,"
. " stock_min, stock_max, stock_unlimited_min, stock_unlimited_max,"
. " point_rate, sale_limit, sale_unlimited, deliv_date_id, deliv_fee,"
. " status, product_flag, create_date, del_flg";
$from = "vw_products_allclass AS T1";
$order = "random()";
break;
(略)
----

●list.php
---
<!--{if $orderby != 'random'}-->
<a href="java script:fnModeSubmit('', 'orderby', 'random')">ランダム</a>
<!--{else}-->
<strong>ランダム</strong>
<!--{/if}-->&nbsp;
---
と追加記入しましたが、
システムエラーとなってしまい、正常に表示できませんでした。
エラー内容は、DB Error: unknown error となっております。

どなたお分かりの方がおられましたらご教授いただければ幸いです。
どうぞよろしくお願いいたします。

---
EC-CUBEバージョン 2.4.1
PHPバージョン PHP 5.2.9
DBバージョン PostgreSQL 7.4.18
seasoft
投稿日時: 2009/10/28 16:15
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7367
Re: 商品一覧ページのソートに「ランダム」を加えたい
> システムエラーとなってしまい、正常に表示できませんでした。
> エラー内容は、DB Error: unknown error となっております。

他にも、もっと有力な情報が表示されたはずです。
エラー文は省略せず(必要なら一部を伏字にして)載せましょう。


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

tmtqn543
投稿日時: 2009/10/28 16:30
対応状況: −−−
一人前
登録日: 2008/12/26
居住地: 長野県諏訪郡原村
投稿: 108
Re: 商品一覧ページのソートに「ランダム」を加えたい
ご返信ありがとうございます。
了解いたしました。エラー文ほぼ全文をお知らせいたします。
何卒御指導いただきたくよろしくお願いいたします。


http://www.***.jp/eccube/products/list.php?mode=search&category_id=&name=%E3%81%9D%E3%81%AE%E4%BB%96%E3%81%AE%E7%B4%A0%E6%9D%90&price02_min=&price02_max=&search.x=30&search.y=7

SERVER_ADDR:202.228.192.197
REMOTE_ADDR:203.191.210.178
USER_AGENT:Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; YTB720; .NET CLR 1.1.4322)

SELECT DISTINCT price02_min, product_id, product_code_min, product_code_max, name, comment1, comment2, comment3, main_list_comment, main_image, main_list_image, price01_min, price01_max, price02_max, stock_min, stock_max, stock_unlimited_min, stock_unlimited_max, point_rate, sale_limit, sale_unlimited, deliv_date_id, deliv_fee, status, product_flag, create_date, del_flg FROM vw_products_allclass AS T1 WHERE del_flg = 0 AND status = 1 AND ( name ILIKE ? OR comment3 ILIKE ?) ORDER BY random() LIMIT 15 OFFSET 0
DB Error: unknown error

SELECT DISTINCT price02_min, product_id, product_code_min, product_code_max, name, comment1, comment2, comment3, main_list_comment, main_image, main_list_image, price01_min, price01_max, price02_max, stock_min, stock_max, stock_unlimited_min, stock_unlimited_max, point_rate, sale_limit, sale_unlimited, deliv_date_id, deliv_fee, status, product_flag, create_date, del_flg FROM vw_products_allclass AS T1 WHERE del_flg = 0 AND status = 1 AND ( name ILIKE '%その他の素材%' OR comment3 ILIKE '%その他の素材%') ORDER BY random() LIMIT 15 OFFSET 0 [nativecode=ERROR: for SELECT DISTINCT, ORDER BY expressions must appear in select list]

***.eccubes/eccube2/html/products/list.php 34:LC_Page_Products_List_Ex->process
***.eccubes/eccube2/data/class_extends/page_extends/products/LC_Page_Products_List_Ex.php 123:LC_Page_Products_List_Ex->lfDispProductsList
***.eccubes/eccube2/data/class_extends/page_extends/products/LC_Page_Products_List_Ex.php 371:SC_Query->select
***.eccubes/eccube2/data/class/SC_Query.php 95:SC_DbConn->getAll
***.eccubes/eccube2/data/class/SC_DbConn.php 160:DB_common->getAll
***.eccubes/eccube2/data/module/DB/common.php 1610:DB_common->execute
***.eccubes/eccube2/data/module/DB/common.php 959:DB_pgsql->simpleQuery
***.eccubes/eccube2/data/module/DB/pgsql.php 338:DB_pgsql->pgsqlRaiseError
***.eccubes/eccube2/data/module/DB/pgsql.php 786:DB_common->raiseError
***.eccubes/eccube2/data/module/DB/common.php 1853:PEAR->raiseError
***.eccubes/eccube2/data/module/PEAR.php 557:DB_Error->DB_Error
***.eccubes/eccube2/data/module/DB.php 893:PEAR_Error->PEAR_Error
seasoft
投稿日時: 2009/10/28 16:34
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7367
Re: 商品一覧ページのソートに「ランダム」を加えたい
そもそも、DISTINCT を使っている理由が不明ですが、「DISTINCT を使うならば、SELECT 句にも random() を書き足して」ということかと思います。


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

tmtqn543
投稿日時: 2009/10/28 16:45
対応状況: −−−
一人前
登録日: 2008/12/26
居住地: 長野県諏訪郡原村
投稿: 108
Re: 商品一覧ページのソートに「ランダム」を加えたい
的確なアドバイスを頂きまして、ありがとうございました。
無事に正しく表示することに成功いたしました。

まだまだプログラムは勉強中で、未知数な部分が多く
御迷惑をお掛けしてしまいますが、
今後ともどうぞよろしくお願いいたします。

本当にありがとうございました。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は89,355名です
総投稿数は110,082件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2314
5
umebius
2085
6
yuh
1819
7
h_tanaka
1652
8
red
1570
9
mcontact
1304
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.