0

http://www.roguevalleyroses.com/rose_list.php?search_id=&class=&height=&growth=&color=&bloom_size=&bloom_type=&shade=&fragrance=&disease=&rebloom=þs=&zone=&hybridizer=Ashdown%20Roses&date_range=&text=&view= &show=&page=4

これはページです。結果を照会するコードは次のとおりです: http://pastebin.com/d51bfa53f

OSCommerce の仕組みがまったく理解できません。他に何か必要な場合はお知らせください。また、これは SQL クエリ、PHP ループ、または一部の計算が間違っている場合によくある問題ですか? これはハッキングされた/カスタムの OsCommerce であるため、必ずしも正確な回答は必要ありません。

4

2 に答える 2

2

問題は、osCommerce コードが処理できない "group by" 句 (splitResults クラス ファイル) にあります。しばらくこれに苦労しましたが、これが私の最初の修正の試みでした:

if (strpos($sql_query, 'group by')) {
    $reviews_count_query = tep_db_query("select count(*) as total from (select count(*)" . substr($sql_query, $pos_from) .") as GroupedResult");
} else {
    $reviews_count_query = tep_db_query("select count(*) as total " . substr($sql_query, $pos_from, ($pos_to - $pos_from)));
}
//$reviews_count_query = tep_db_query("select count(*) as total " . substr($sql_query, $pos_from, ($pos_to - $pos_from)));

ただし、さらにテストすると、それも適切に機能していません。次に、何が起こっているのかを正確に理解するのに時間を費やし、同様のコードが oscommerce に既に存在することを発見しました:

ここで、splitpageresults クラスが "group by" 句であることがわかります...そして、その下には、修正された顧客数を numrows クエリに配置するための "fix" があります。そして、そのクエリは、splitpageresults によって割り当てられ、「y 件中 x 件の結果を表示」します。

于 2015-05-25T11:06:04.087 に答える
1

これはスパムだとは思わない。

これはoscommerceの一般的な問題です。espカスタムコントリビューションはクエリに関してより多くの問題を追加します。oscommerceナビゲーションクラスはdistinctまたはgroupby句の使用をサポートしていません。 、これらのキーワードは考慮されません。これを修正するには、分割ページの結果クラスを変更する必要があります。

乾杯シヴァ

于 2010-03-03T12:08:59.723 に答える