ホームページ >バックエンド開発 >PHPチュートリアル >SMARTY二次サイクルアドバイス

SMARTY二次サイクルアドバイス

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBオリジナル
2016-06-23 13:52:20977ブラウズ

うわー
コードは現在のロジックを表示するものですが、機能しませんでした

長い間 SMARTY を学習していません

テーブルが 2 つあります
forum_forum はディスカッション フォーラム ID、主に `name`、` fid`
forum_topic_type はディスカッション フォーラム ID のトピック分類です: 主に `typeid`、`name`、`fid`

もともと
私は最初に
forum_forum をすべてのセクションとともにリストし、それから Smarty の assign に追加しました

フロントデスクのすべてのセクションのリストに正常に表示されました

しかし、セクション名の下にあるこのディスカッションセクションの下にあるすべての「トピックカテゴリ」をサイクルアウトしたいのですが、

しかし、これらのことがわかりました(このテーブル forum_forum ) がフォアグラウンドで循環されています。 ループ結果の ID が既にテンプレートに含まれているため、ループ関連のトピック分類を取得できません

そこで、考えました...smarty を割り当てる前に、試してみてください。 foreach を実行して結果がどうなるか見てみましょう

それから、にマージできるかどうかを試してください 同じグループ番号を再度割り当てるのは少し不便なようです

そこで、先輩方にアドバイスを求めたいです


解決策考えたのですが

1. 複数テーブルのクエリをマージするのですが、サブジェクト分類が複数あるので諦めました

2. Smartyプラグインを作る、試してみましたが。それも行き詰まっていて前に進めません

実はSMARTYは二次循環の問題に長い間悩まされてきましたが、もはや避けては通れないようです、このことを十分に理解した上でアドバイスをお願いいたします。質問

アドバイスをお願いします。


ディスカッションに返信 (解決策)

質問もしてください

SMARTY を使用してモディファイアを作成すると、まったく機能しません

PDO を使用しています

$pdoのようなハンドル? しかし、この種のプラグインはテンプレートから直接呼び出され、$pdoをまったく追加できません

プラグインも追加してみましたが、データベースファイルは関数に導入されますが、データベースの操作が間違っていることも意味します

何か解決策はありますか? それとも、プラグインのこの部分がデータベースをまったく操作できないのでしょうか?


どのステップが失敗しましたか? $row_typeには価値がないのでしょうか?

1. テンプレート処理を通じて、クラス テーブルは結果セットを取得するためにサブクラス テーブルに関連付けられます。スマートな割り当ての後、テンプレートは 2 回循環されます。

2. プログラムを介したクエリ結果セットの処理: 結果セットを返し、プログラム内でそれを文字列にアセンブルし、それをテンプレートに直接割り当てます。


//所有版块@$row_fid = "SELECT * FROM `forum_forum` ORDER BY `displayorder` ASC";$stmt = $pdo->prepare($row_fid);$stmt->execute();$row_forum = $stmt->fetchAll(PDO::FETCH_ASSOC);	//主题分类	foreach ($row_forum as $key => $value) {		$fid = $value["fid"];		@$sql = "SELECT `typeid`,`name` FROM `forum_topic_type` WHERE `fid` = $fid";		$stmt = $pdo->prepare($sql);		$stmt->execute();		$row_type = $stmt->fetchAll(PDO::FETCH_ASSOC);	}		print_r($row_type);$smarty -> assign("all_forum",$row_forum);

お兄さん、ありがとう

そういう意味です
ありがとうございます、勉強になりました

まさに論理問題です
二次ループ問題のほとんどは今後解けるようです

ありがとう
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。