Dizideki ilk 3 girdileri işlemek için nasıl

3 Cevap php

I am currently working on a project where i am pulling out data using while($r = mysql_fetch_array($the_data))

i 3-4 farklı bir arka plan rengini açar ve zaten tarz olarak daha sonra kalanı bırakın, ben burada bazı basit seçenek vardır eminim ama ben sadece nereye bakmak gerçekten bilmiyorum ki, ilk yapmak istiyorum ...

Size yardımcı olur umarım, teşekkürler!

3 Cevap

Gibi bir şey arıyoruz:

#specialResult {background-color: #fff; }
#normalResult {background-color: #000; }

Eğer süre deyimi içinde döngü Yani, size ne sonuç sayısı izlemek isteyeceksiniz:

$i = 0;
while (...)
{
    if ($i < 4) echo "<div class='specialResult'>";
    else echo "<div class='normalResult'>"; 

    .... rest of your code

    $i++;
}

kısa seyir kodu için yapabileceği:

$i = 0;
while (...)
{
    ?><div class='<?php echo ($i++ < 4 ?"specialResult":"normalResult); ?>'><?php

    .... rest of your code
}
<?php    
$i = 0;
$r = mysql_fetch_array($the_data);
foreach($r as $row) {
    if($i <= 4) {
        // Do special styling...
    } else {
        // Do normal styling.
    }
    $i++;
}
?>

Yoksa yanlış mı?

Ayrıca gibi bir şey deneyebilirsiniz:

$i = 0;
while ( ( $row = mysql_fetch_assoc ( $result ) ) && $i < 4 ) {
    /* Your first 4 rows */
    echo 'Special : ' . $row['title'];
    ++$i;   // Don't forget to increment
} while ( $row = mysql_fetch_assoc () ) {
    /* Normal way */
    echo $row['title'] . ' is already outdated';
}

Ve yerine mysql_fetch_array arasında () mysql_fetch_assoc tercih () ;)