私は、データベース上のテーブルからオプションが決定されるドロップダウン選択を持つフォームを持っています。私は定期的に(手動で)ドロップダウンとデータベースにオプションを追加します。どちらか私は、ドロップダウンの選択は次のようにデータベースからオプションを取得することができます:私は今、更新する必要があり、すべてのデータベースで、フォームが自分自身を更新しますので、私はあまり仕事を与えるデータベースからデータを取得してドロップダウンリストを作成する必要がありますか?
<select class="form-control" name="category" id="category">
<?php
$sql = "SELECT id, category FROM categories;";
$result = $GLOBALS['conn']->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
$category = $row['category'];
$id = $row['id'];
echo "<option value='$id'>$category</option>";
}
}
?>
</select>
を。
または私は手動で入力する。このようなフォームにオプションすることができます
<select class="form-control" name="category" id="category">
<option value='1'>option1</option>
<option value='2'>option2</option>
<option value='3'>option3</option>
</select>
は、この方法では、より多くの手作業が必要になりますが、データベースへのたびに接続する必要がないという利点のために(より少ない仕事を持っていますサーバー)。
私の質問はどの方法を使うべきですか?私にもっと多くの仕事や、サーバーにもっと多くの仕事を与える方法を与える方法?
あなたがデータベースメソッドを持っているのであれば、どうして手動メソッドに行きますか?データベースに固執する – RiggsFolly
データベースから削除してください。それは将来の証明です。まったく同じカテゴリの別の場所で使用する場合は、管理する場所が1つだけになります。サーバーの負荷が心配な場合は、セッションでキャッシュすることができます。 – Ibrahim
@RiggsFolly私が懸念しているのは、データベースメソッドがシステムリソースを浪費するということです。手動で簡単に行うことができ、ページが読み込まれるたびにリソースを無駄にする必要はありません。 – KNejad