Ankündigung

Einklappen
Keine Ankündigung bisher.

0.00 Werte nicht anzeigen

Einklappen

Neue Werbung 2019

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

  • SwissG
    hat ein Thema erstellt 0.00 Werte nicht anzeigen.

    0.00 Werte nicht anzeigen

    Hallo Zusammen

    Ich möchte bei einer Berechnung den Wert 0.00 nicht anzeigen.

    Anbei ein Ausschnitt.

    <td>Essen</td>
    <td align='center'>".$dsatz["essen"]."</td>
    <td align='right'>".$dsatz["preis"]."</td>
    <td align='right'>".$dsatz["rabatt"]."</td>
    <td align='right'>".$dsatz["preistotal"]."</td>
    </tr>

    Wenn ich keinen Rabatt gebe, dann zeigt es mir im Ausgabeformular 0.00 an.
    Ich möchte, jedoch, dass nichts angezeigt wird, wenn ich keinen Rabatt gebe.

    Kann mir jemand sagen, wie ich dieses Feld Unsichtbar mache, wenn der Wert 0 ist?
    Resp. erst etwas angezeigt wird, wenn der Wert grösser als 0 ist?

    Danke

  • lottikarotti
    antwortet
    Hallöchen,

    Zitat von Yann2006 Beitrag anzeigen
    Das es ein Wert "0" statt "0.00" sein kann hatte ich nicht bedacht, allerdings wird vermutlich der Preisrabatt von einem Skript berechnet, dort kann man also festlegen das der Wert "0" immer als "0.00" gerendert wird.
    Wieso sollte man das tun? Generell macht es keinen Sinn einen numerischen Wert gegen eine Zeichenkette zu prüfen.

    Zitat von Yann2006 Beitrag anzeigen
    Das ist richtig, allerdings behält er sich so die Möglichkeit vor (vielleicht auf Wunsch des Betrachters) den Rabatt auch anzuzeigen wenn der Wert "0.00" ist.
    Dann macht es doch deutlich mehr Sinn zu einer Template-Engine zu greifen und einen entsprechenden Filter zu implementieren. Ich nutze bspw. Twig und mache das so in der Art:
    PHP-Code:
    <td>{{ price number_format | default }}</td
    Der default-Filter gibt bspw. einen Bindestrich ("-") aus, sofern der Wert 0 ist. Dieses Verhalten lässt sich natürlich zentral konfigurieren.

    Viele Grüße,
    lotti

    Einen Kommentar schreiben:


  • SwissG
    antwortet
    Vielen Dank für die Antworten und Ratschläge.

    Genau der Vorschlag von tr0y ist das was ich gesucht habe.

    Super

    Einen Kommentar schreiben:


  • Yann2006
    antwortet
    Zitat von lottikarotti Beitrag anzeigen
    Und wenn der Wert jetzt doch mal ein Integer, also ein 0, ist?
    Das es ein Wert "0" statt "0.00" sein kann hatte ich nicht bedacht, allerdings wird vermutlich der Preisrabatt von einem Skript berechnet, dort kann man also festlegen das der Wert "0" immer als "0.00" gerendert wird.

    Zitat von lottikarotti Beitrag anzeigen
    Und wieso mit display:none herumfummeln? Im Idealfall wird der Zelleninhalt gar nicht erst gerendert.
    Das ist richtig, allerdings behält er sich so die Möglichkeit vor (vielleicht auf Wunsch des Betrachters) den Rabatt auch anzuzeigen wenn der Wert "0.00" ist.

    Einen Kommentar schreiben:


  • tr0y
    antwortet
    Ich denke

    PHP-Code:
    echo "<td>Essen</td>
    <td align='center'>"
    .$dsatz["essen"]."</td>
    <td align='right'>"
    .$dsatz["preis"]."</td>
    <td align='right'>"
    .( $dsatz["rabatt"] == '0.00' '' $dsatz['rabatt'] )."</td>
    <td align='right'>"
    .$dsatz["preistotal"]."</td>"
    ist eher was er sich vorstellt.

    Einen Kommentar schreiben:


  • lottikarotti
    antwortet
    Hallöchen,

    Zitat von Yann2006 Beitrag anzeigen
    PHP-Code:
    if($dsatz['rabatt'] == '0.00'){echo 'style=\'display:none\''
    Und wenn der Wert jetzt doch mal ein Integer, also ein 0, ist? Besser wäre:

    PHP-Code:
    if($rabatt){ .. } 
    Und wieso mit display:none herumfummeln? Im Idealfall wird der Zelleninhalt gar nicht erst gerendert.

    @TE: Du solltest dich dringend mit aktuellen Standards beschäftigen. Dein align gehört nämlich ins CSS.

    Viele Grüße,
    lotti

    Einen Kommentar schreiben:


  • VPh
    antwortet
    Moin,

    bitte mal ein paar Tutorials durcharbeiten. Sobald du beim Thema Kontrollstrukturen ankommst, triffst du auf die Lösung für deine wirklich einfache Herausforderung.

    http://php-de.github.io/jumpto/grund...len/#tutorials
    http://www.peterkropff.de/site/php/grundlagen.htm

    Einen Kommentar schreiben:


  • Yann2006
    antwortet
    in erster linie musst du deine php variable escapen mit \" oder du nutzt einfach ':

    PHP-Code:
    $dsatz['rabatt'
    warum prüfst du vorher den wert nicht einfach und setzt dann ein css attribut?

    PHP-Code:
    if($dsatz['rabatt'] == '0.00'){echo 'style=\'display:none\''

    Einen Kommentar schreiben:

Lädt...
X