0
我正在處理一個代碼,該代碼必須更改頁面的背景顏色,或者如果值爲負值,則後面爲紅色,如果值爲正值,則爲綠色。它爲什麼不改變背景顏色?
我有一個正在計算正確的代碼和一個從PHP文件獲取一些操作的css。
但我的文件不改變背景顏色。我不明白爲什麼。也許任何人都可以幫忙,最終解釋出了什麼問題?
第一: 報價表最後兩個價行是32和30
style.css.php
<?php
$con=mysqli_connect("localhost","root","","boerse");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$result = mysqli_query($con," SELECT SUM(CASE WHEN rnum = 2 THEN -1 * price ELSE price END) diff_value,
ROUND(SUM(CASE WHEN rnum = 2 THEN -1 * price ELSE price END)/
SUM(CASE WHEN rnum = 1 THEN 0 ELSE price END) * 100) diff_percent
FROM
(
SELECT id, stock_id, price, @n := @n + 1 rnum
FROM quotations CROSS JOIN (SELECT @n := 0) i
ORDER BY date DESC
LIMIT 2
) q");
//$chnge = mysqli_fetch_array($result))
header('Content-type: text/css');
if ($result>"0"){
$background = "red";
$color = "white";
} elseif ($result<"0") {
$background = "green";
$color = "white";
}
else {
$background = "white";
$color = "black";
}
mysqli_close($con);
?>
body {
background-color: <?=$background?>;
color: <?=$color?>;
}
tiat2.php
<html>
<head>
<link rel="stylesheet" type="text/css" href="style.css.php">
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("#responsecontainer").load("getdata.php");
var refreshId = setInterval(function() {
$("#responsecontainer").load('getdata.php?randval=2');
}, 5000);
});
</script>
</head>
<body>
<div id="responsecontainer">
</div>
</body>
</html>
事實上頁應該是紅色,因爲32> 30等(32 - 30)> 0,但它是綠色的。但是出了什麼問題?
任何有想法的人?感謝所有嘗試提供幫助的人。
我不知道你在哪裏傳遞任何變量數據插入SQL查詢。你爲什麼期望結果改變?在背景中是否有其他的東西會導致表中的數據改變?另外,你期望在輸出中發生什麼?它所要做的就是在div內輸出一些CSS文本,而不是實際上將CSS應用於任何東西。 –
@MikeBrant - 希望我明白你的意思: 在我的表格中,我有幾個條目。上面的SQL計算,如果最新的行大於或小於第二個最新的行。我想$結果會得到結果,我可以用它作爲if語句。 但我想我並沒有真正理解你的問題,對嗎? – user3088932