Ankündigung

Einklappen
Keine Ankündigung bisher.

Preisangabe / Nachkommastellen

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

  • Preisangabe / Nachkommastellen

    Hallo zusammen,

    kann mir viell. kurz jemand einen Tip geben.

    Ich befasse mich gerade das erste Mal mit dem Catalog und bekomme es einfach nicht hin, dass ein Preis mit Nachkommastelle angezeigt wird. Hier im Forum habe ich gelesen, dass man das Attribut auf Text umstellen kann statt nummerische Zeichen.

    Muss man man nach der Umstellung auf Text auch noch etwas in einem Template ändern? Wenn ja, in welchen und wie :-) ?
    Leider wird bei mir im BE immer wieder gerundet.

    Vielen Dank im voraus

    Klicke auf die Grafik für eine vergrößerte Ansicht

Name: Unbenannt2.JPG
Ansichten: 82
Größe: 28,2 KB
ID: 22073


    Klicke auf die Grafik für eine vergrößerte Ansicht

Name: Unbenannt.JPG
Ansichten: 62
Größe: 28,8 KB
ID: 22074

  • #2
    Hi,
    der Feldtyp Numerisch erlaubt direkt ein Ausgabe-Format einzustellen. Freitext können im Template via number_format formatiert werden.
    http://www.premium-contao-themes.com

    Kommentar


    • #3
      Hallo noch einmal,

      vielen Dank für die Antwort.
      Leider bekomme ich es einfach nicht hin den Kommawert auszugeben.(siehe Bild)

      Was mache ich falsch?
      Für einen kleinen Tip wäre dankbar.

      Vielen Dank und schöne Ostern
      Angehängte Dateien
      Zuletzt geändert von Vaddi22; 02.04.2021, 15:30.

      Kommentar


      • #4
        Berechnungen sollten nicht mit konvertierten Zahlen durchgeführt werden. Die fertige Summe sollte erst konvertiert werden.
        ---
        Benutzt man die Formatierungsoptionen eines Attributes aus dem Backend ist die Feld-Ausgabe via ->html() durchzuführen.

        Die ->html() Methode durchläuft auch das Attribute-Template.

        https://forum.premium-contao-themes....late-variablen
        http://www.premium-contao-themes.com

        Kommentar


        • #5
          Hallo,

          vielen Dank für die Antwort.
          Ich weis, es sind viell. komische Fragen aber so ganz ohne Codekontakt geht das Ganze hier ja nicht

          Leider hilft mir das alles nicht weiter. Es lassen sich im BE keinerlei Kommawerte abspeichern. Weder mit Punkt noch mit Komma.

          Des Weiteren wenn ich Atributtyp umstelle auf TEXT werden auch die Nachkommastrellen nicht gespeichert. Bsp. 14,90 € -> nach abspeichern 14. Ich kann da auch Banane reinschrieben und es erscheint dann eine NULL (0) im BE obwohl es ein TEXT Feld ist. ( Cache usw usw. ist alles geleehrt und durchgeführt.)

          Ich weis leider echt nicht mehr weiter, da ich leider nicht so ganz der PHP Freak bin.

          Was müsste ich im CC_Catalog - LIST Template eintragen damit das funktioniert? ...und welche Auswahl treffe ich dann beim Attributtyp- TEXT oder Nummerische Werte?

          Über Hilfe wäre sehr dankbar

          Vilene Dank und Gruß

          --------------------------schnipp--------------------------------------- customcatalog_catalog_list


          <?php $sum = 0; ?>
          <?php if(!$this->empty): ?>
          <div class="item-wrapper">
          <?php foreach($this->entries as $entry): ?>
          <div class="block entry<?php if($entry->field('highlight')->value()): ?> item-highlight<?php endif; ?>" <?php echo $this->cssID; ?>>

          <div class="item-inside">
          <?php if($entry->field('highlight')->value()): ?> <i class="item-highlight-icon fa fa-star"></i><?php endif; ?>
          <a href="<?php echo $entry->links('detail')->url; ?>"><?php echo $entry->field('image')->html(); ?></a>
          <h6><a href="<?php echo $entry->links('detail')->url; ?>"><?php echo $entry->field('name')->value(); ?></a></h6>
          <div class="brand"><?php echo $entry->field('brand')->html(); ?></div>
          <div class="price color-accent">&euro;<?php echo $entry->field('price')->value(); ?><?php if($entry->field('price_old')->value()): ?><span> &euro;<?php echo $entry->field('price_old')->value(); ?></span><?php endif; ?></div>
          <div class="more-buttom"><a href="<?php echo $entry->links('detail')->url; ?>">DETAILS</a></div>
          </div>

          </div>

          <?php $sum += $entry->field('price')->value(); ?>

          <?php endforeach; ?>
          </div>
          <?php else: ?>
          <p class="info empty">Keine Artikel gefunden</p>
          <?php endif;?>

          <div class="notelist-sum bg-accent">
          <div class="headline">Gesamtsumme: </div>
          <span>&euro; <?php echo $sum; ?></span>
          </div>
          Zuletzt geändert von Vaddi22; 07.04.2021, 11:00.

          Kommentar


          • #6
            Ist der Feldtyp TEXT, kannst du jedes Zeichen speichern. Ich denke Du hast die DB noch nicht aktualisiert. Damit bleibt das Feld auf integer, das nur Ganzzahlen speichert. CC wird auf ein Datenbank-Update hinweisen! -> muss durchgeführt werden!

            Für eine mathematische Berechnung darf man KEIN Kommata setzen (oder muss dieses sonst erst wieder ausradieren). Es muss mit Punkt gearbeitet werden.
            Zuletzt geändert von Tim; 07.04.2021, 13:00.
            http://www.premium-contao-themes.com

            Kommentar

            Lädt...
            X