风格回声输出不同

时间:2016-01-09 13:08:02

标签: php css

我需要设置回声输出的样式。 Fx

如果数字为1则应为蓝色

如果数字为6则应为绿色

我不太确定这样做,因为如果我设置我的div标签,那就是所有的数字,我需要设置一些特定的数字。因为现在它的一些数字有不同的填充。我想如果它应该是

if($number == 1) {
   //some code
}

还是完全错了?

HTML:

<div id="show" >
            <div class="numberheader">
                <p>Tal</p>
            </div>
            <ul class="latestnumbers" style="list-style:none;padding-top: 60px;">
                <?php include('response.php');?>
            </ul>           
        </div>  

PHP:

<?php 
//echo "kuagdjagd";
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
//include('session.php');

// Selecting Database
include 'dbconfic.inc.php';
$pad_left_values = array(0 => 19, 1 => -1, 2 => 20, 3 => -1, 4 => 38, 5 => -1, 6 => 40, 7 => 20, 8 => 20, 9 => 40, 10 => 20, 11 => 20, 12 => 20);

    // '?' er placeholders for variabler
    $stmt = $mysqli->prepare("SELECT * FROM numbertable ORDER BY num_id DESC LIMIT 9;");

    // execute prepared statement 
    $stmt->execute();

    // gør variabler klar:    
    $number = null;    
    $n_id = null;

    /* bind result variabler */
    $stmt->bind_result($n_id, $number);

    /* fetch values for hver row, her kun 1 row dog: */
    while ($stmt->fetch()) {
        $pad = ($number >= 1 && $number <= 12? $pad_left_values[$number]: $pad_left_values[0]);

         echo "<li><div style='padding-left: ".$pad."px;'>$number</div></li>";

    }    

    // luk statement                        
    $stmt->close();

    // luk connection
    $mysqli->close();                   

?>

2 个答案:

答案 0 :(得分:1)

你可以像使用Paddings那样做:通过使用数组。

$colorArr = Array(0=>"black", 1=>"blue", 2=>"yellow", /** ... **/, 6=>"green" /** ... **/);
/** ... **/
while ($stmt->fetch()) {
    $pad = ($number >= 1 && $number <= 12? $pad_left_values[$number]: $pad_left_values[0]);
    $col = ($number >= 1 && $number <= 12? $colorArr[$number]: $colorArr[0]);

    echo "<li><div style='padding-left: ".$pad."px; color: ".$col."'>$number</div></li>";

}    

另外,为了让您的代码更具动态性,您应该将$number <= 12条件替换为$number < count($pad_left_values)。这样您就可以添加更多填充/颜色值,而不必担心在代码中设置正确的数字。

答案 1 :(得分:0)

替换

 echo "<li><div style='padding-left: ".$pad."px;'>$number</div></li>";

 echo '<li><div class="color_'.$number.'" style='padding-left: ".$pad."px;'>$number</div></li>';

并编写CSS forr案例

 .color_1{
     color:blue;
  }
.color_6{
     color:green;
  }