我需要设置回声输出的样式。 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();
?>
答案 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;
}