2012-10-03 3 views
0
나는 흰색과 밝은 회색 사이 테이블의 행 색상을 대체 할 수있는 방법이 있다면 내가 woundering되었다 ... 동적으로 값의 전체 테이블을 만드는 오전

이 ..동적 테이블 생성 배경 색상

이 인 나는 테이블을 만드는 데 사용하고 코드 ...

while($row = mysql_fetch_array($result)) 
    { 
    echo "<tr>"; 
    echo "<td>" . $row['name'] . "</td>"; 
    echo "<td>" . $row['width'] . "</td>"; 
    echo "<td>" . $row['height'] . "</td>"; 
    echo "<td>" . $row['normal_fill'] . "</td>"; 
    echo "<td>" . $row['our_fill'] . "</td>"; 
    echo "<td>" . $row['old_price'] . "</td>"; 
    echo "<td>" . $row['price'] . "</td>"; 
    echo '<td><form method="post" action=""><input type="hidden" name="duckdown_id" value="'.$row['duckdown_id'].'" /><input type="submit" name="sumbit" value="Delete" /></form></td>'; 
    echo "</tr>"; 
    } 
echo "</table>"; 
+0

만약 당신이 이것을 할 사람이 있다면 어떻게 할 것입니까? 너 뭐 해봤 니? – BugFinder

+0

당신의 코드는 꽤 오래된 것으로 보입니다. 왜 양식을 사용하여 하나의 값만 제출합니까? – Peon

+0

@HurkNburkS : 문제를 해결할 수있는 해결책을 찾았을 때 대답을 선택하는 것을 잊지 마십시오. 감사! – Mike

답변

4

마다 2 '행 증분 변수를 추가하고 확인 : 보조 노트로

$i = 1; 
while($row = mysql_fetch_array($result)){ 
    $background = '#000'; 
    if($i%2 == 0){ 
     $background = '#00f'; 
    } 
    $i++; 
    echo "<tr style='background-color:".$background.";'>"; 

을, 당신이 여전히을 사용하는 참조함수, 방금 시작한 경우 PDO으로 이동할 수 있으며 mysql_* 함수는 사용되지 않습니다. Here is a nice tutorial.

+0

굉장해! 지금 그것을 시험해 볼 예정이다 !!! 나는 이것에 대해 생각해 봤어야했다. php ... 내 머리를 둥글게하는 것이 힘들다. 나는 코드를 디버그하고 직접적인 결과를 얻는 데 익숙하다. 내가 무엇을 의미하는지 안다면 .. – HurkNburkS

+0

그건 내가 취할 접근법이다. .. 더 나은 아직, 나는 스타일 속성 대신 클래스를 설정할 것이다. – Mike

3

매우 유사 (및 오프 기준) 내 접근 방식은 @Mihai Iorga의 것 CSS 클래스 기반 :

CSS :

gray { background-color: gray; } 
red { background-color: red; } 

PHP :

$i = 1; 
while($row = mysql_fetch_array($result)){ 
    $background = 'gray'; 
    if($i%2) { 
     $background = 'red'; 
    } 
    $i++; 
    echo "<tr class='$background'>"; 
} 
+0

그 위대한 주셔서 감사합니다 – HurkNburkS

0

하는 경우 CSS를 사용합니다 (Mihai lorga의 코드 사용)

PHP

$i = 1; 
while($row = mysql_fetch_array($result)){ 
    if($i%2 == 0){ 
     echo "<tr class=even>"; 
    }else{ 
     echo "<tr class=odd>"; 
    } 
    echo "<td>" . $row['name'] . "</td>"; 
    //etc. 
    $i++; 
} 

CSS 스타일 시트의 '행에도'클래스

<style type="text/css"> 
    .even{ 
     background-color:#00f; 
    } 
    .odd{ 
     background-color:#000; 
    } 
</style> 
+0

아 바보. 현재 일부 자바 스크립트에서 일하고있는 Im;) 그래서 나는 그것을 섞었다. 감사합니다. – Marcel

0

당신은 다음과 같이 간단한 jQuery 코드를 사용할 수

$(document).ready(function() 
    { 
     $('tbody tr:odd').addClass("row-odd"); 
     $('tbody tr:even').addClass("row-even"); 
    }); 

그리고 정의 '행 이상한'합니다.