Jump to content
Tom Next - Daytrading Community

PHP - Farbe einer Variable in Abhängigkeit vom Wert


whipsaw

Recommended Posts

Hallo zusammen,

Ich versuche mich gerade in php (bitte nicht zu laut lachen).


Als Aufgabe habe ich mir dabei gestellt, eine Variable farbig zu kennzeichnen.
Die Schrift soll via CSS rot eingefärbt werden, wenn der Wert negativ ist und grün, wenn positiv.

<?php echo ($List['pricechange_ytd'])?number_format($List['pricechange_ytd'], 2, ',', '.'):'0,00';?> 

 

Weit bin ich ehrlich gesagt nicht gekommen.
Deswegen auch die Bitte um einen kleinen Denkanstoß von Seiten der Profi-Coder.


Vielen Dank schon mal im Voraus
whipsaw

Link to comment
Share on other sites

Ist sicher verkehrt und nicht hilfreich, aber ein Versuch ist es ja als Denkanstoß vllt.

Einfacher Uhrzeit-Algorithmus
Das Layout kann man nach einfachen Kriterien verändern. In dem nächsten Beispiel bestimmen wir das Layout durch die Uhrzeit. Von 6 bis 18Uhr soll der Hintergrund weiß und die Schrift schwarz sein. Von 18 bis 6Uhr soll es wechseln.



style.css.php
PHP

<?php
header('Content-type: text/css');

if (date("H")>6 && date("H")<18){
$background = "white";
$color = "black";
} else {
$background = "black";
$color = "white";
}
?>

body {
background-color: <?=$background?>;
color: <?=$color?>;
}

 


index.html
HTML

<html>
<head>
<link rel="stylesheet" type="text/css" href="css/style_wmp.css.php">
</head>
<body>
Text
</body>
</html>

 

 

In der CSS-PHP-Datei wird die Uhrzeit kontrolliert und dementsprechend die Werte festgelegt. Dies ist ein sehr simples Beispiel, welches jeder verstehen sollte. .
Aufwendiger wird es mit Algorithmen, die ganze Boxen tauschen oder Inhalte ausblenden. Aber darin liegt der Reiz, möglichst dynamischen Content zu erstellen.

 

Also hast es ja gelesen, nicht wirklich schwer, also streng Dich mal an. grin.gif
LOL, Vola versteht gar nichts shok.gif

Quelle

Link to comment
Share on other sites

function getColor($ytd)
{
if ($pricechange_ytd > 0) $color = '#006400';
if ($pricechange_ytd < 0) $color = '#8b0000';
if ($pricechange_ytd = 0) $color = '#000000';
}

 

Wieso muss ich bei Deinen Tipps immer noch selbst nachdenken ....plorar1.gif

 

 

Oben mal meine Funktion,

die eigentlich stimmen könnte swepimp.gif .

 

Ich weiß nur nicht, wie ich die mit dem anderen php Code verheiraten kann, damit sich die Farbe tatsächlich ändert.

Link to comment
Share on other sites

Weiß nicht ob hier etwas für Dich dabei ist, ansonsten musst du warten bist die Programmierer alle ausgeschlafen haben, ist denke ich so ca 21:00

 

Bin heute mal früher aufgestanden.

 

 

 

 

 

<html>
<head>
<style type="text/css">

.red {
    color: #C70A0A;

}

.green {
    color: #28C20A;

}


</style>
</head>

<body>

<?php

$random = rand(-3, 5); // zu Testzwecken generieren wir eine zufällige Zahl zwischen -3 und 5

if ($random >= 0) {
    $class = "green";

} else {
    $class = "red";

}


echo "<span class=\"".$class."\">".$random."</span>";

?>


</body>
</html>

 

 

@whipsaw: Dafür musst du uns aber auch sagen, was das werden soll. Das sieht nach etwas ganz spannendem aus. Solche Farbveränderungen bei ändernden Zahlen kenne ich von der Börse. Hat es damit vielleicht etwas zu tun?

 

 

  • Upvote 2
Link to comment
Share on other sites

Bin heute mal früher aufgestanden

 

Na geht doch mit den jungen Hühnchen laugh.png

 

@whipsaw: Dafür musst du uns aber auch sagen, was das werden soll. Das sieht nach etwas ganz spannendem aus. Solche Farbveränderungen bei ändernden Zahlen kenne ich von der Börse. Hat es damit vielleicht etwas zu tun?

 

Auf keinen Fall hat das was mit Börse zu tun, denke eher das ist für den Digitalisierten Kühlschrank - was ist noch da, was muss gekauft werden usw....

Der Chief versucht sein Foodcenter zu tunen.

Link to comment
Share on other sites

Danke an alle, die mithelfen :wub:

 

@Rumpel - shakehands.gif - jetzt nur noch die Frage, wie ich $random in meinen Code einbauen muss.

 

Auf keinen Fall hat das was mit Börse zu tun, denke eher das ist für den Digitalisierten Kühlschrank - was ist noch da, was muss gekauft werden usw....

Der Chief versucht sein Foodcenter zu tunen.

Indirekt schon.

Das ganze nennt sich DAX-Tafel-Watcher und ist eine Erweiterung von dem Teil.

Die EA2Web-Komponente generiert immer dann ein Signal, wenn der Tiefstkurs erreicht ist (=grün) und ein Signal, wenn der Höchstkurs erreicht ist (rot).

Quasi die Mutter aller KISS-Strategien in neuem Gewand.

Link to comment
Share on other sites

Darf ich, darf ich? :D (wollte gestern um 9 nichts schreiben weil eh schon alles gesagt war ;)

 

Es ist die Frage wie/wo dein Codeschnippsel eingebettet ist, aber hier zB eine Variante wie rumpels schnipsel und dein code zusammenspielen würden:

Formal schön wäre es natürlich das css in ein eigenes File zu packen etc. aber das sind feinheiten.

<html>
<head>

<style type="text/css">
.red {
color: #C70A0A;
}

.green {
color: #28C20A;
}

</style>

</head>

<body>

<?php
$text= ($List['pricechange_ytd'])?number_format($List['pricechange_ytd'], 2, ',', '.'):'0,00';

if ($List['pricechange_ytd'] >= 0) {
  $class = "green";
} else {
  $class = "red";
}

echo "<span class=\"".$class."\">".$text."</span>";

?>
</body>
</html>
  • Upvote 2
Link to comment
Share on other sites

Ah cool.

funktioniert!

Den Style habe ich noch in eine CSS ausgelagert

 

Cheers Jungs!

Klasse Unterstützung (und ich habe wieder was dazugelernt).

 

Eine Nachgelagerte Frage: $text - kann ich das immer verwenden, oder muss ich wenn ich eine andere Variable farbig möchte $text1 wählen?

Link to comment
Share on other sites

Wenn du das öfters durchspielen möchtest dann wäre eine Schleife sicher sinnvoll um das zu lösen. Aber dann müsstest du uns auch sagen in welcher Form deine Daten da ankommen. Du müsstest uns einen tieferen Einblick gewähren denke ich. :wink2:

 

Edit: Und nochwas: du "färbst keine Variable". Sondern du möchtest eine Ausgabe farbig anzeigen.

Edited by Rumpel
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...