-1

mySQL データベースからの戻り値に基づいて、テーブル内のセルの色を変更しようとしています。

song_order |   encore    
1          |     0             
2          |     0       
3          |     0       
4          |     0       
5          |     0       
6          |     0      
7          |     0       
8          |     1      
9          |     1       
10         |     1        
11         |     2       
12         |     2     

song_id セルをエコーアウトしていますが、アンコール セルはエコーアウトしていません... アンコール セルの値を使用して、song_id セルのみの背景を変更するにはどうすればよいですか?

 while($row = mysqli_fetch_array($show))
  {   

  echo "<tr>";  

   echo "<td style='padding: 10px; width:5px;'>" . $row['song_order'] ." </td>";
  echo "</tr>";
  }
  echo "</table>";

こんな感じでしょうか。しかし、これらのif値を「曲順」に追加するにはどうすればよいですか? これが正しいのか、どのように変更する必要があるのか​​ わかりません...

while($row = mysqli_fetch_array($show))

{if ($row['encore'] == "0") $tdClass = 'メインセット';

そうでなければ ($row['encore'] == "1") $tdClass = 'encore1';

そうでなければ ($row['encore'] == "2") $tdClass = 'encore2';

エコー "";

エコー "" 。$row['song_order'] ." "; } エコー "";

CSS
 .mainset {
    background-color:transparent;
 }
 .encore1 {
    background-color:pink;
 }
 .encore2 {
    background-color:blue;
 }

私は正しい方向に進んでいますか、誰かがこのコードを手伝ってくれますか? 私は何かが欠けていますが、これはすでに機能していますか?

4

2 に答える 2

0

クラスを次のように配置します

echo "<tr>";  
    echo "<td style='padding: 10px; width:5px;' class='<?php echo $tdClass;?>'>" . $row['song_order'] ." </td>";
 echo "</tr>";

そして、適切なCSSに適切なクラスを配置するようにしてください

あなたのコメントに従って、このように試してください.Yorはエコーで$ tdClassをエコーし​​ているため、競合が発生します

 while($row = mysqli_fetch_array($show)) {
     if ($row['encore'] == "0") 
         $tdClass = 'mainset'; 
     else if ($row['encore'] == "1") 
         $tdClass = 'encore1'; 
     else if ($row['encore'] == "2") 
          $tdClass = 'encore2'; 
     echo "<tr>"; 
         echo "<td style='padding: 10px; width:5px;' class='".$tdClass."'>" . $row['song_order'] ." </td>";
     echo "</tr>";
}
于 2013-08-02T04:26:35.560 に答える
0

css クラスまたは ID は数字で始めることはできません

変化する:

.1encore {
    background-color:pink;
 }
 .2encore {
    background-color:blue;
 }

 .encore1 {
    background-color:pink;
 }
 .encore2 {
    background-color:blue;
 }
于 2013-08-02T04:26:48.610 に答える