Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Summiert nur die Zahl vor dem Komma

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Summiert nur die Zahl vor dem Komma

    Hallo zusammen


    ich finde einfach meinen Fehler nicht oder besser gesagt kann es nicht .
    Hättet Ihr vielleicht eine Idee ?



    habe zunächst ..

    $Dauersumme=0;
    $Dauersumme+= Globals_Num($row['Dauer']);
    $Dauer= Globals_FormatStr($row['Dauer']);

    dann beim ausgeben der Summe:

    echo "Globals_FormatStr($Dauersumme,'.',',')";


    die Funktionen sind :

    function Globals_FormatStr($Zahl)
    {
    // -- Wo faengt der Name an? --
    $start = strpos($Zahl, ',');

    // -- Kein Komma gefunden --
    If ($start === false)
    {
    // -- Nachkommastelle anhaengen --
    Return ($Zahl.',0');
    }
    // -- Erstes Zeichen Komma? --
    ElseIf (0 === $start)
    {
    // -- Null davorsetzten --
    Return ('0'.$Zahl);
    }
    Else
    {
    // -- Zahl sieht Ok aus --
    Return ($Zahl);
    }

    }

    function Globals_Num($Zahl,$Suche=',',$Ersetze='.')
    {
    // -- Wo faengt der Name an? --
    $start = strpos($Zahl, '$Suche');

    // -- Ganzzahlig ohne Komma --
    If ($start === false)
    {
    Return (float)($Zahl);
    }
    // -- Nur Nachkommawerte --
    ElseIf (0 === $start)
    {
    Return (float) '0'.str_replace($Suche,$Ersetze, $Zahl);
    }
    // -- Vor und Nachkommawerte --
    Else
    {
    Return (float) str_replace($Suche,$Ersetze, $Zahl);
    }

    }


    das Problem ist,dass er die einzelnen dauer zwar richtig aufschreibt aber beim summieren nur die zahl vor der Komma summiert.
    ich weiß nicht wo mein Fehler ist

    Bin ne Anfängerin entschuldigt bitte jetzt schon mal ...

  • #2
    Du hast ein grundlegendes Problem mit Strings, schau dir an wenn Quotes verwendet werden müssen und was der Unterscheid zwischen ' und " ist. Damit solltest du die ersten Fehler finden und die Nachfolgenden wirst du dann schon mitbekommen.

    Kommentar


    • #3
      ) ich hab ihn gefunden , zumindestens den ersten Fehler mit ' ' danke

      Kommentar


      • #4
        PHP rechnet, wie alle Programmiersprachen, auf die englische Art.
        Also: Kommastellen werden durch den Punkt getrennt.

        9.123.456,36 (DE) = 9,123,456.36 (EN)
        Windows Server gehören NICHT ins Internet!

        Dildo? Dildo!

        Kommentar


        • #5
          http://www.php-fig.org/psr/psr-2/

          Kommentar


          • #6
            Danke

            Kommentar

            Lädt...
            X