【smarty】


DBからselect * from exampleで結果を配列に入れて、それをsmartyにassignするとします。

それで、smarty側で表示するとき、普通にforeachすればいいわけですが、
横に3列、縦に5行としたい場合など、どうすればいいのか分かりません。

元々配列からassignするときに、多次元配列にしておいて、かつ、データも表示したい件数で切っておくべきなんですかね~。。。

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2007/10/08 10:27:13
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:GEN111 No.1

回答回数472ベストアンサー獲得回数58

ポイント70pt

table だとして、こんな感じではどうでしょうか。

<table>
{foreach from=$myarray item=myitem name=myloop}
{if $smarty.foreach.myloop.index % 3 == 0}<tr>{/if}
<td>{$myitem}</td>
{if ($smarty.foreach.myloop.index + 1) % 3 == 0}</tr>{/if}
{/foreach}
{if $smarty.foreach.myloop.total % 3 != 0}</tr>{/if}
</table>
id:keijiro

おお!

まさに、求めていたのに近いかもしれません。

ありがとうございます。

明日、試してみます。

2007/10/05 00:56:48

その他の回答1件)

id:GEN111 No.1

回答回数472ベストアンサー獲得回数58ここでベストアンサー

ポイント70pt

table だとして、こんな感じではどうでしょうか。

<table>
{foreach from=$myarray item=myitem name=myloop}
{if $smarty.foreach.myloop.index % 3 == 0}<tr>{/if}
<td>{$myitem}</td>
{if ($smarty.foreach.myloop.index + 1) % 3 == 0}</tr>{/if}
{/foreach}
{if $smarty.foreach.myloop.total % 3 != 0}</tr>{/if}
</table>
id:keijiro

おお!

まさに、求めていたのに近いかもしれません。

ありがとうございます。

明日、試してみます。

2007/10/05 00:56:48
id:lark_mild No.2

回答回数74ベストアンサー獲得回数0

id:keijiro

ループ関係ないですね。。

質問と回答がちぐはぐです。

2007/10/08 10:26:48

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません