在循环中突出显示php中的第一行

I'm getting all rows from mysql database. Now I want to highlight only first row in php while loop with class name keywordHighlight.

How do I highlight only first row in php while loop result ?

if($numSearch > 0){     

echo "<font color='green'>We found $numSearch result(s).</font>";
    echo "<table width='100%' cellpadding='0' cellspacing='0'>";
    echo "<thead>";
    echo "<tr>";                
    echo "<td class='' valign='top' width='200'></td>";
    echo "<td class='' valign='top' width='125'></td>";                             
    echo "<td class='' valign='top' width='125'></td>";
    echo "<td class='' valign='top' width='125'></td>";                             
    echo "<td class='' valign='top' width='125'></td>";                             
    echo "</tr>";   
    echo "</thead>";
    echo "<tbody>";     


while($resGetSearch =  mysql_fetch_array($getSearch)){

    $SearchCdid = $resGetSearch['cdid'];
    $SearchFamilyName =  $resGetSearch['family_name'];          
    $SearchGivenName =  $resGetSearch['given_name'];            
    $SearchCompamyCid = $resGetSearch['cid']; 
    $SearchDepartment = $resGetSearch['department'];
    $SearchTitle = $resGetSearch['title'];

    $SearchComapnyName =  mysql_query("SELECT company_name FROM company WHERE cid = '$SearchCompamyCid' ");
    $resSearchCompanyName =  mysql_fetch_array($SearchComapnyName);     
    $companyName = $resSearchCompanyName['company_name'];

    if (strlen($companyName) >= 20) {
        $companyName =  substr($companyName, 0, 10). "" . substr($companyName, -5);
    }else{
        $companyName = $companyName;
    }

    // my Highlighted class = keywordHighlight";    


    echo "<tr onclick='getDetails($SearchCdid);' >";                                        
    echo "<td valign='top' >$companyName</td>";
    echo "<td valign='top'>$SearchFamilyName</td>";
    echo "<td valign='top'>$SearchGivenName</td>";
    echo "<td valign='top'>$SearchDepartment</td>";
    echo "<td valign='top'>$SearchTitle</td>";
    echo "</td>";
    echo "</tr>";       
    }
    echo "</tbody>";
    echo "</table>";                        
    echo "<hr/>";
    echo "<br/>";   

}//elseif is not empty search
elseif($numSearch === 0){
    echo "<font color='red'>No Matches.</font>";
}

put some flag $f=0; if f==0 then do something like this:

    $highlight="<div class='keywordHighlight'>valur of first row</div>";// instead of dive you can use table also it depends on how you want to display.
$f=$f+1;

and rest in else part.

Do it like this

$i = 1;
while($resGetSearch =  mysql_fetch_array($getSearch)){ 
    $highlight = $i == 1 ? 'keywordHighlight' : '';
    echo "<tr class='{$highlight}' onclick='getDetails($SearchCdid);' >";
    ---------------
    -------------
    -------------

    $i++;
}

Only with CSS

or you can highlight it only with css

#highlight tbody tr:nth-child(1){
  background: #ff6600;
}

There is more and elegant way to highlight only first row with only css not need to code, consider the example http://jsbin.com/soravuzakahu/1/

You could just add a boolean outside the loop. Like so:

$first = true;

while($resGetSearch =  mysql_fetch_array($getSearch)){

    if(first == true){
        // Add code here that only applies to the first iteration.
    }
    $first = false;
}
<?php
if($numSearch > 0){     

echo "<font color='green'>We found $numSearch result(s).</font>";
    echo "<table width='100%' cellpadding='0' cellspacing='0'>";
    echo "<thead>";
    echo "<tr>";                
    echo "<td class='' valign='top' width='200'></td>";
    echo "<td class='' valign='top' width='125'></td>";                             
    echo "<td class='' valign='top' width='125'></td>";
    echo "<td class='' valign='top' width='125'></td>";                             
    echo "<td class='' valign='top' width='125'></td>";                             
    echo "</tr>";   
    echo "</thead>";
    echo "<tbody>";     


    $i = 0;
while($resGetSearch =  mysql_fetch_array($getSearch)){
    ++$i;
    $SearchCdid = $resGetSearch['cdid'];
    $SearchFamilyName =  $resGetSearch['family_name'];          
    $SearchGivenName =  $resGetSearch['given_name'];            
    $SearchCompamyCid = $resGetSearch['cid']; 
    $SearchDepartment = $resGetSearch['department'];
    $SearchTitle = $resGetSearch['title'];

    $SearchComapnyName =  mysql_query("SELECT company_name FROM company WHERE cid = '$SearchCompamyCid' ");
    $resSearchCompanyName =  mysql_fetch_array($SearchComapnyName);     
    $companyName = $resSearchCompanyName['company_name'];

    if (strlen($companyName) >= 20) {
        $companyName =  substr($companyName, 0, 10). "" . substr($companyName, -5);
    }else{
        $companyName = $companyName;
    }

    // my Highlighted class = keywordHighlight";    

    if($i == 1)
        echo "<tr onclick='getDetails($SearchCdid);' >";
    else
        echo "<tr class='keywordHighlight' onclick='getDetails($SearchCdid);' >";
    echo "<td valign='top' >$companyName</td>";
    echo "<td valign='top'>$SearchFamilyName</td>";
    echo "<td valign='top'>$SearchGivenName</td>";
    echo "<td valign='top'>$SearchDepartment</td>";
    echo "<td valign='top'>$SearchTitle</td>";
    echo "</td>";
    echo "</tr>";       
    }
    echo "</tbody>";
    echo "</table>";                        
    echo "<hr/>";
    echo "<br/>";   

}//elseif is not empty search
elseif($numSearch === 0){
    echo "<font color='red'>No Matches.</font>";
}

Use a flag and set its value to true and while in loop check its value , if its true then print class name and set its value to false. Like $flag=true; then inside while loop check

 if($flag==true) { 
    <td class='yourclassname';
  $flag= false;
  } 
$first = true;

while ( $resGetSearch =  mysql_fetch_array($getSearch) )
{

    if ( $first == true )
    {
        // Add code here that only applies to the first iteration.
        $first = false;
    }
    else
    {
        // Add code here that only applies to the 2, 3, and so on.
    }

}