HTMLレイアウトに3つの列/div/セクションがあるとしましょう。それらをcat1、cat2、cat3と呼びましょう。次に、「Content」というテーブルを持つデータベースがあります。そのテーブルには、id、title、content、category のフィールドがあります。
ここで、これら 3 つの列に、mysql テーブルの対応するコンテンツを入力したいと考えています。たとえば、カテゴリ = cat1 (最初の列に対応) のテーブルからすべてのコンテンツを取得します。
それぞれ独自のパラメーターを持つ 3 つの関数を作成することもできますが、コードを繰り返したくありません。単一の関数でこれを行うにはどうすればよいですか?ただし、別のパラメーターを使用するだけですか?
私は次のようなことを考えていました:
public function displayAll_with_category ($category) {
$sql = $con->prepare("SELECT * FROM Table WHERE Category=?");
$sql->bindParam(1, $category);
$sql->execute();
while ($row = $sql->fetch()) {
echo $row['Title'];
}
}
次に、私のHTMLで:
<div id="cat1">
// Using a central class
<?php include('class.php'); $obj = new handler; $obj->displayAll_with_category(); ?>
</div>
これまでのところ、同じ関数を使用して cat1/2/3 のコンテンツを呼び出すことができるように、$category パラメーターを何らかの方法で変更できるようにする必要があります。通常、ボタンまたはフォームを介して PHP 関数に何かを送信する必要がありますが、今回はそうではありません。これは純粋なPHPでも実行できますか? これを AJAX で行うことも考えられますが、今のところ、PHP で実行できるかどうかを知りたいと考えています。