0

このトピックに関する情報を見つけるのに本当に苦労しています。何か助けていただければ幸いです。要するに、ユーザーがドロップダウンリストからカテゴリを選択し、いくつかのコンテンツを入力し、SQL に移動する送信を押すフォームがあります。ドロップダウンの各カテゴリは色分けされています。

<option STYLE="color: #00CC66;" value="Option_1">Option_1</option>
<option STYLE="color: #0066CC;" value="Option_2">Option_2</option>
<option STYLE="color: #996633;" value="Option_3">Option_3</option>

次に、保存された送信データ (カテゴリとコンテンツ) を、日付順に並べ替えられた同じページのテーブルにプルアップする php があります。

<?php
$con=mysqli_connect("localhost","myuser","mypassword","mydb");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

$result = mysqli_query($con,"SELECT * FROM mytable order by date DESC");

echo "<table border='1'>
<tr>
<th>Category</th>
<th>Contents</th>
<th>Date/Time</th>
</tr>";

while($row = mysqli_fetch_array($result))
  {
  echo "<tr>";
  echo "<td>" . $row['category'] . "</td>";
  echo "<td>" . $row['contents'] . "</td>";
  echo "<td>" . $row['date'] . "</td>";
  echo "</tr>";
  }
echo "</table>";

mysqli_close($con);
?> 

私の質問は、エコーがテーブルに情報を配置するときに、「カテゴリ」をユーザーフォームと同じ色で表示する方法はありますか? (IE、表では、Option_1 は #00CC66、Option 2 は 0066CC などと表示されます...)

基本的に、フェッチされたテーブルの実際のカテゴリ テキストを、ドロップ ダウン フォームと同じように表示したいと考えています。カテゴリが限られているため、それぞれを手動で設定する必要があるかどうかは気にしませんが、これをどこから始めればよいかわかりません. 事前にどんな助けにも感謝します!

4

1 に答える 1

1

はい。ただし、選択ボックスの値を色に変更するか、次のように手動で行う必要があります。

function getColor($strOption)
{
   switch ($strOption)
   {
       case "Option_1":
       return "#00CC66";

       case "Option_2":
       return "#0066CC";
       #etc
    }
}

次に、while ループで:

while($row = mysqli_fetch_array($result))
  {
  echo "<tr>";
  echo "<td><font color='".getColor($row['category'])."'> " . $row['category'] . "</font></td>";
  echo "<td>" . $row['contents'] . "</td>";
  echo "<td>" . $row['date'] . "</td>";
  echo "</tr>";
  }
于 2013-10-01T15:30:58.963 に答える