1

私はphpとsmartyを使用するビジネスサイトでいくつかの作業を行っています。現在、請求書が注文部門に送信されており、棚にある商品を体系的に見つける方法が必要です。

すべてのフィールドを設定しましたが、phpを使用してhtmlテーブルの行に並べ替える方法がわかりません。for eachステートメントを使用して、注文された各アイテムの行を作成します。

スマートの組み合わせの有無にかかわらず、phpでこれを行う方法はありますか?私はまだそれに慣れていません、そしてどんな助けもいただければ幸いです。

クエリが見つかりました。

$products = func_query("SELECT $sql_tbl[order_details].itemid, $sql_tbl[products].*, $sql_tbl[products_lng_current].*, $sql_tbl[extra_field_values].value, $sql_tbl[order_details].*, IF($sql_tbl[products].productid IS NULL, 'Y', '') as is_deleted, IF($sql_tbl[order_details].product = '', $sql_tbl[products_lng_current].product, $sql_tbl[order_details].product) as product $fields FROM $sql_tbl[order_details] LEFT JOIN $sql_tbl[products] ON $sql_tbl[order_details].productid = $sql_tbl[products].productid LEFT JOIN $sql_tbl[products_lng_current] ON $sql_tbl[products_lng_current].productid=$sql_tbl[products].productid $join WHERE $sql_tbl[order_details].orderid='$orderid' ORDER BY $sql_tbl[extra_field_values].value desc); 

で注文を追加しましたが、ページが壊れてしまいます。

4

1 に答える 1

2

データの取得方法によって異なります。データベースからのものである場合ORDER BYは、クエリに句を含めることができ、すべてがうまくいくはずです。

それに失敗すると、foreachループ内で出力していると述べているため、おそらくデータは外部ソースからの配列に既に格納されています。その場合、PHP関数を読んでみることができますusort()

jQuery プラグイン「DataTables」をチェックしてください: http://datatables.net/

最後に、これを DOM で行う以外にどうしても方法がない場合は、'DataTables' をチェックしてみてください。これは jQuery のプラグインで<table>、カスタム アルゴリズムを使用して要素を並べ替えることができます (また、ユーザーが並べ替えることができるフィールドを指定することもできます)。これを既存の Smarty テンプレートに統合することもそれほど難しくありません。

于 2012-12-07T21:24:27.480 に答える