2011-12-15 45 views
0

我試圖讓每一個第二TD在我的表(HTML)另一種顏色,所以我使用這個變量未定義的變量它在我的表:PHP用VAR改變顏色

<td style='background:<?=$bgColor;?>'></td> 

但後來我得到一個錯誤:未定義的變量與$ BGCOLOR =($的bgcolor等);

它的工作,但我得到的錯誤。

我該如何解決這個問題?通常,當我忘記了if(isset())時,我得到了這個錯誤;但那不是這裏的情況。

感謝在前進:)

+0

添加`$ bgColor ='';`在第一個之前如果 – Narek 2011-12-15 11:48:50

+0

你沒有得到一個錯誤,你最喜歡得到關於訪問一個未定值的通知。 – Rufinus 2011-12-15 11:49:41

+0

你看過[斑馬條紋](http://css-tricks.com/snippets/css/css3-zebra-striping-a-table/)嗎?它是CSS3,所以它不適用於舊版瀏覽器,但它很方便。 – ThatOtherPerson 2011-12-15 11:50:53

回答

3
$bgColor = (isset($bgColor) && $bgColor == "#eee") ? "#fff" : "#eee"; 
0

你應該設置$ BGCOLOR到#fff(或#eee),否則它是未定義的表的第一行中的初始值(假設你有你填充<td>循環使用振盪值bgColor - 實際上你的問題幾乎可以推測)。

-1

它是錯誤,警告或通知你正在得到?未定義的變量在PHP中不是一個大問題,但如果它是一個通知,您可以通過關閉錯誤報告中的「E_NOTICE」來控制該變量。

1

OK,你可以取消錯誤這樣,通過把@符號盈變量$ BGCOLOR

$bgColor = (@$bgColor == "#eee") ? "#fff" : "#eee"; 
<td style='background:<?=$bgColor;?>'></td> 

或乾脆把isset()函數這樣功能的..

$bgColor = (isset($bgColor) == "#eee") ? "#fff" : "#eee"; 
<td style='background:<?=$bgColor;?>'></td>