#1
| ||||
| ||||
Hilfe bei if/else StrukturHallo, Folgende Funktion: Code: function get_html4temp($temp) { // Temperaturen: 50 bis -50 $temp = str_replace('-',1,$temp); if($temp <= 50) { $bla = '#0000FF'; } elseif($temp <= 40) { $bla = '#1900E5'; } elseif($temp <= 30) { $bla = '#3300CC'; } elseif($temp <= 20) { $bla = '#4C00B2'; } elseif($temp <= 10) { $bla = '#660099'; } elseif($temp <= 0) { $bla = '#7F007F'; } elseif($temp <= 110) { $bla = '#990066'; } elseif($temp <= 120) { $bla = '#B2004C'; } elseif($temp <= 130) { $bla = '#CC0033'; } elseif($temp <= 140) { $bla = '#E50019'; } elseif($temp <= 150) { $bla = '#FF0000'; } else { $bla = '#000000'; } return $bla; } Für jede Temperatur soll der entsprechende HTML-Code wiedergeben werden. Wenn die Temperatur kleiner als 40 (Grad) ist soll halt der Farbcode '#1900E5' ausgeben werden. Folgende Denkschritte: $temp ist ne Zahl.. Von 50 bis -50 ist alles dabei. Das Minuszeichen wird mit einer 1 ersetzt da ich <= mit nur mir positiven Zahlen ans Laufen bekomme. Das Problem: Es wird immer nur der HTML-Code für <= 150 ausgeben.. Nach ein bissl rumtesten. Die Lösung: Code: function get_html4temp($temp) { // Temperaturen: 50 bis -50 if($temp <= 50 AND $temp > 40) { $bla = '#FF0000'; } elseif($temp <= 40 AND $temp > 30) { $bla = '#E50019'; } elseif($temp <= 30 AND $temp > 20) { $bla = '#CC0033'; } elseif($temp <= 20 AND $temp > 10) { $bla = '#B2004C'; } elseif($temp <= 10 AND $temp > 0) { $bla = '#990066'; } elseif($temp <= 0 AND $temp > -10) { $bla = '#7F007F'; } elseif($temp <= -10 AND $temp > -20) { $bla = '#660099'; } elseif($temp <= -20 AND $temp > -30) { $bla = '#4C00B2'; } elseif($temp <= -30 AND $temp > -40) { $bla = '#3300CC'; } elseif($temp <= -40 AND $temp > -50) { $bla = '#1900E5'; } elseif($temp <= -50 AND $temp > -60) { $bla = '#0000FF'; } else { $bla = '#000000'; } return $bla; } |
#2
| ||||
| ||||
Hi Nase, kann ich nicht bestätigen, allerdings bekomme ich falsche Werte. Das liegt daran, dass du ne falsche Reihenfolge hast. PHP-Code: |
#3
| ||||
| ||||
Hi Nase! Hab dir mal ne Funktion geschrieben, die ihren Dienst ebenso tun sollte. PHP-Code: Sorry, hab nicht gesehen, dass vor mir schon jemand geantwortet hat, aber meine Alternative erscheint mir vom Code her trotzdem schöner, als die vielen elfseifs. __________________ Fabian Michael "Ein Tag, an dem du nicht lächelst, ist ein verlorener Tag." - Charlie Chaplin Wiki |
#4
| ||||
| ||||
@Dracaelius: Du hast dabei aber nur eine Kleinigkeit übersehen: Wenn die Zahl > 50 ist soll #000000 genommen werden. Es müsste also noch ein return hinter dem foreach hinzugefügt werden: PHP-Code: codi. |
Stichworte |
- |
Themen-Optionen | |
Thema bewerten | |
Ähnliche Themen | ||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
DRINGEND: Hilfe bei Praktikumsbericht, Beobachtende Wahrnehmung | MrNase | Boardunity-Talk | 11 | 11.04.2009 17:14 |
Brauche Hilfe bei Frames... | Andy2309 | Programmierung und Datenbanken | 2 | 19.06.2004 11:09 |
Opera7 - Eine hilfreiche Hilfe für Anfänger und Profis | TRS | Boardunity-Talk | 1 | 21.05.2004 21:24 |
Hilfe! Wie setze ich per sql den admin beim wbb2.1.3 zurück? | AboveAllOthers | Forensoftware | 7 | 13.02.2004 19:59 |
Hilfe, Notfall: Recherche Wunder gesucht! | Winters | Boardunity-Talk | 4 | 28.01.2004 01:30 |