2016-11-30 2 views
-2

Imは、txtファイルを読み込み、PHP経由でコンテンツを表示しようとしています。読み込んで表示しても問題ありません。私は別の言葉を違う色にしたいと思います。しかし、最初の行は決して正しい色を取得しません。ループ内の最初の行のPHPの色

<HTML> 
<HEAD> 
</HEAD> 
<BODY> 

<?php 
$fontcolor=Black; 
$row = 1; 

echo "<TABLE width=100%>"; 
echo "<TD>"; 
### State section 
if (($handle = fopen("sdmon12images\State.txt", "r")) !== FALSE) { 
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) { 
     $num = count($data); 
     $row++; 
     for ($c=0; $c < $num; $c++) { 
      if ($data[$c] == "Busy"): 
       $fontcolor=Red; 
      endif; 
      if ($data[$c] == "Pause"): 
       $fontcolor=Blue; 
      endif; 
      if ($data[$c] == "Idle"): 
       $fontcolor=Green; 
      endif; 
      if ($data[$c] == "Post processing"): 
       $fontcolor=Orange; 
      endif;   
      echo "<font color=$fontcolor>" . $data[$c] . "<br />\n"; 
      $fontcolor=Black; 
     } 
    } 
    fclose($handle); 
} 

echo "</TD>"; 
echo "</TABLE>"; 
?> 
</HTML> 

その結果、最初の行は標準色で、他の行は正しく色付けされています。最初の行を正しい色でどのように色づけするのですか?

+0

あなたは私たちにTXTファイルの最初の行を示してもらえますか?また、HTMLコードには多くのエラーがあります。 – roberto06

+0

フォーマットを改善します。 –

答えて

0

私は、これは動作するはずだと思う:

<HTML> 
<HEAD> 
</HEAD> 
<BODY> 

<?php 
$fontcolor="Black"; 
$row = 1; 

echo "<table width='100%'>"; 
echo "<td>"; 
### State section 
if (($handle = fopen("sdmon12images\State.txt", "r")) !== FALSE) { 
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) { 
     $num = count($data); 
     $row++; 
     for ($c=0; $c < $num; $c++) { 
      if ($data[$c] == "Busy"): 
       $fontcolor="Red"; 
      endif; 
      if ($data[$c] == "Pause"): 
       $fontcolor="Blue"; 
      endif; 
      if ($data[$c] == "Idle"): 
       $fontcolor="Green"; 
      endif; 
      if ($data[$c] == "Post processing"): 
       $fontcolor="Orange"; 
      endif;   
      echo "<font color='$fontcolor'>" . $data[$c] . "<br />\n"; 
      $fontcolor="Black"; 
     } 
    } 
    fclose($handle); 
} 
?> 
関連する問題