if else if ... was stimmt hier nicht?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • if else if ... was stimmt hier nicht?

    Hallo!

    ich habe hier ein ganz merkwürdiges Problem bei dem ich die Ursache nicht finde. In meinem Code befindet sich folgende if/else if Abfrage, die eigentlich funktioniert aber bei manchen Werten eben wieder nicht

    PHP-Code:
    <? if ( $var_a <= "1.10" ) { ?>
    <img src="../led/green.gif" />
    <? } else if ( $var_a >= "1.11" AND $var_a <= "1.40"){ ?>
    <img src="../led/yellow.gif" />
    <? } else if ( $var_a >= "1.41" AND $var_a <= "2.00"){ ?>
    <img src="../led/red.gif" />
    <? } else if ( $var_a >= "2.00" ) { ?>
    <img src="../led/grey.gif" />
    <? } ?>
    Konkret wird z.B. beim Wert 1.11, 1.41 keine der Optionen angezeigt, was ja irgendwie dafür spricht dass bei den größer gleich Operatoren etwas nicht stimmt. Was es aber ist sehe ich nicht..

    Vielen Dank,

    sl

  • #2
    Du willst mit Zahlen arbeiten!
    Oder?
    Warum verwendest du dann Strings?
    Wir werden alle sterben

    Kommentar


    • #3
      eh ja? Ich verstehe die Frage nicht. Wo liegt das Problem?

      danke
      sl

      Kommentar


      • #4
        Zitat von sublevel1980 Beitrag anzeigen
        eh ja? Ich verstehe die Frage nicht. Wo liegt das Problem?

        danke
        sl
        Aber der Unterschied zwischen Zahlen und Strings ist dir bekannt?
        Wir werden alle sterben

        Kommentar


        • #5
          scheinbar nicht! Du meinst wegen der "" bei den Zahlen?

          Kommentar


          • #6
            ja
            Wir werden alle sterben

            Kommentar


            • #7
              aber wenn ich da keine anführungen oder eben '1.11' mache (was ist denn richtig?) ändert sich am Problem nichts ...

              danke,

              sl

              Kommentar


              • #8
                Was ist, wenn die Zahl 1.105 ist? Dann trifft weder <= 1.10, noch >= 1.11 zu.

                Kommentar


                • #9
                  @ h3ll

                  das könnte es sein! Das ist ja... blöd und könnte der Fehler sein ...
                  wie umgehe ich das am besten außer durch runden?

                  Kommentar


                  • #10
                    Statt ">= 1.11" "> 1.10" verwenden.

                    Kommentar


                    • #11
                      Zitat von sublevel1980 Beitrag anzeigen
                      aber wenn ich da keine anführungen oder eben '1.11' mache (was ist denn richtig?) ändert sich am Problem nichts ...
                      Ob jetz "" oder '' ist immer noch ein String. Warum lässt du die dinger nicht einfach ganz weg?
                      gruss Chris

                      [color=blue]Derjenige, der sagt: "Es geht nicht", soll den nicht stoeren, der's gerade tut."[/color]

                      Kommentar

                      Lädt...
                      X