私は mysql データベースから情報を引き出すための php ページを作成しています。
複数の行を返す MySql クエリがあります。これにより、while ループを使用して簡単にループでき、相対的な「一致する」データがある場所を明らかにループします。
引き出される各行には、行ごとに異なる 1 ~ 16 列のデータを含めることができます。現在、有効な情報を抽出する方法は、入力された情報のみが表示されるように、各列の「if」コマンドをハードコーディングすることです。 、例:
if($column1 != ""){
$output .= "<div style='float: left;'>Column 1 Stuff</div>";
}
if($column2 != ""){
$output .= "<div style='float: left;'>Column 2 Stuff</div>";
}
これは問題なく動作しますが、あまり動的ではなく、Mysql データベース テーブルが拡張された場合はコードを更新する必要があります。私が本当にやりたいことは、データが含まれるすべての列に対して同じ手順を実行し、空白のセルを無視する while ループのような単一ビットのコードを使用することです。誰もが知っているこれを効率的に達成する良い方法はありますか?
また、問題が発生した場合に備えて、私の「div」はすべて左に配置されているため、囲んでいる div の最後に到達すると、自動的に次の行にきちんと折り返されます。したがって、9 つの結果があった場合は 3 行になります。 3つの「div」ボックス。これは、この種の結果を達成するための有効な方法ですか? この投稿のように「break」コマンドを使用して回答することを検討していました-> PHPで水平ループを実行する方法 、しかし、IE9以前のタグとの互換性の問題が非常に多いため、可能な限り実装を避けています.
できれば、事前にあなたの助けに感謝します! ジョー