brauche hilfe be bei php prozentrechnung?

  • Hallo

    vielleicht kann mir hier jemand helfen?

    Code
    <if (!$SHOP_CUSTOMERDATA[Level]==1) {
    
    
        $sum_vat= 0;
        foreach ($basket_items as $i) { 
           $sum_vat += item_get_field('price', $i)*item_get_field('count', $i)*item_get_field('vat', $i)*0.01;
        }>

    ich habe hier ein php script das eigentlich bewirken soll, wenn der eingeloggte Kunde dieses attribut besitzt der preis ohne steuer angezeigt werden soll, und bei nicht eingeloggten ebend nicht.
    Ich hab auch schon einige versuche unternommen und einiges ausprobiert aber so geht es irgendwie nicht, kann mir jemand vielleicht einen tip geben?

    vielen, vielen Dank

  • Zitat von Anonymous

    Hallo

    vielleicht kann mir hier jemand helfen?

    Code
    <if (!$SHOP_CUSTOMERDATA[Level]==1) {
    
    
        $sum_vat= 0;
        foreach ($basket_items as $i) { 
           $sum_vat += item_get_field('price', $i)*item_get_field('count', $i)*item_get_field('vat', $i)*0.01;
        }>

    ich habe hier ein php script das eigentlich bewirken soll, wenn der eingeloggte Kunde dieses attribut besitzt der preis ohne steuer angezeigt werden soll, und bei nicht eingeloggten ebend nicht.
    Ich hab auch schon einige versuche unternommen und einiges ausprobiert aber so geht es irgendwie nicht, kann mir jemand vielleicht einen tip geben?

    vielen, vielen Dank

    Hallo nochmal, ich glaube das mein erklärungsversuch etwas verworren klingt. Deshlb versuch ichs mal einfacher

    Also ich brauche ein Script welches Prüft ob die eigenschaft vorhanden ist welche meinen Preis als netto angibt.


    Zitat


    <td align=left valign=top width="400">

    [b]


    <font size=2px>$text_details_price_prefix
    <if (!$SHOP_CUSTOMERDATA[Level]==1) $GROSS_PRICE_MODE==TRUE;>$item_price<</font>[b]
    <font size=2>$item_price_2nd_currency</font> </td>

    <td align=right>
    </td>


    ich habs jetzt so versucht aber es geht so auch nicht.
    $GROSS_PRICE_MODE steht für Mwst
    $item_price steht für Produktpreis

    vielleicht geht es ja das man angibt: Wenn die eigenschaft vorhanden ist das dann 19% vom Produktpreis abgezogen werden( also nur 81% vom normalen)

    Bitte, bitte helft mir

  • so kannst du aber kein php anwenden !

    php ist kein element von html, sondern eine eigene scriptsprache !

    das hier geht nicht !
    <if (!$SHOP_CUSTOMERDATA[Level]==1) $GROSS_PRICE_MODE==TRUE;>

    -- wird zu -->

    PHP
    <?php
    if($SHOP_CUSTOMERDATA['Level'] != 1 && $GROSS_PRICE_MODE) {
    echo $item_price;
    }
    else {
    echo "Blaaa, kein Preis vorhanden";
    }
    ?>


    um php verwenden zu können muss dein web-server php unterstützen und die datei muss die endung php haben (zB preis.php)

    mfg

    Sei immer du selbst. Außer du kannst Batman sein. Sei immer Batman!

  • vielen dank, aber es funktioniert irgendwie alles nicht so recht. Ich hab zwar versucht mir php etwas anzueignen aber ich blick da nicht durch.
    Würde soetwas nicht auch vielleicht mit Javascript funktionieren?

    Also wenn $SHOP_CUSTOMERDATA['Level'] != 1 ist das dann $item_price -19% gerechnet wird.

    Dankeschön

  • <?php
    if($SHOP_CUSTOMERDATA['Level'] != 1) {
    $item_price = $item_price * 0.81;
    }
    ?>

    so ?

    Sei immer du selbst. Außer du kannst Batman sein. Sei immer Batman!

  • Hallo


    vielen Dank aber es klappt einfach nicht

    jetzt bekomme ich eine fehlermeldung

    ich hab mal den seitencode angegeben, dieses <?php kann ich nicht nehmen weil es schon durch <input type.... eingeleitet wird.
    Jetzt bekomme ich folgende Fehlermeldung

    Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /homepages/18/d142585422/htdocs/bs_shopdata/error404.php4(136) : eval()'d code(109) : eval()'d code(519) : eval()'d code(156) : eval()'d code on line 100


  • Hi

    wenn ichs so

    Code
    <font size=2px>$text_details_price_prefix  
    
    
    <? if($SHOP_CUSTOMERDATA['Level'] != 1) { 
    $item_price = $item_price*0.81; 
    }?>


    eingebe bekomme ich keine Fehlermeldung, allerdings wird der Preis garnicht angezeigt

  • doch, das geht :)

    <input type="text" name="preis" value="<?php
    if($SHOP_CUSTOMERDATA['Level'] != 1) $item_price = $item_price * 0.81;?>">

    aber du arbeitest doch sonst mit perl oder was des is, wieso nutzt du das nicht auch da ?

    Sei immer du selbst. Außer du kannst Batman sein. Sei immer Batman!

  • Zitat von BendOr

    doch, das geht :)

    <input type="text" name="preis" value="<?php
    if($SHOP_CUSTOMERDATA['Level'] != 1) $item_price = $item_price * 0.81;?>">

    aber du arbeitest doch sonst mit perl oder was des is, wieso nutzt du das nicht auch da ?

    es geht wirklich nicht, ich hab das oben so eingegeben und bekomme jetzt wieder eine fehlermeldung.

    Parse error: parse error, unexpected ';' in /homepages/18/d142585422/htdocs/bs_shopdata/error404.php4(136) : eval()'d code(109) : eval()'d code(519) : eval()'d code(154) : eval()'d code on line 123

    Perl? kenne mich leider noch nicht so gut mit Fachbegriffen aus. Es handelt sich um nen 1und1 shop system

    <td align=left valign=top width="400">

    [b]

    <font size=2px>$text_details_price_prefix

    <input type="text" name="price" value="<?php
    if($SHOP_CUSTOMERDATA['Level'] != 1) $item_price = $item_price * 0.81;?>">

    </font>

    ich habs jetzt so

  • Hallo nochmal

    erstmal vielen Dank für die hilfreichen Tipps, ich habe jetzt bei 1und1 angerufen, dort will oder kann mir leider niemand weiterhelfen, die setzen php kenntnisse vorraus wenn man dort etwas ändern will.
    Nun habe ich gelesen das man mit "§preis" nicht rechnen kann, sondern es mittels php umwandeln muss, das klingt auch logisch.
    Aber ich hab jetzt schon auf sämtlichen php lernseiten versucht mir das selbst anzueignen, aber irgendwie blicke ich da nicht durch. Hab gerade erstmal einigermaßen Html selbst gelernt.
    Kann mir vielleicht jemand sagen wie man das "umwandeln" schreiben muss damit dann der preis auch angezeigt wird?


    nochmals vielen Dank für die Hilfe und die Geduld


    Problem: Sie möchten mit Variablen (vorzugsweise mit "$preis") in den Templates (Detail oder Smalllist) weiterrechnen, aber die Ergebnisse zeigen meist "0" an oder gar nichts.


    Die Variable "$preis" ist in den Templates ein String, mit dem keine arithmetischen
    Rechenoperationen durchgeführt werden kann. Benutzen Sie stattdessen die Variable
    "$preis_real".
    Umwandeln ins Darstellungsformat -also wieder in einen String der Form "95,90 DM"-
    können Sie diese mit:


    <?php
    $preis = geldformat($preis_real);
    php?>


    PHP
    <input type="text" name="preis" value="<?php 
    if($SHOP_CUSTOMERDATA['Level'] != 1) $item_price = $item_price * 0.81;php?>"> 
     $price
  • Hallo

    Oh wunder, ich habs hinbekommen,
    jetzt wird der preis ohne steuer angezeigt, aber wie mache ich es das wenn der jenige nicht eingeloggt ist oder nicht das attribut level 1 hat der preis ohne abzug angezeigt wird?

  • du kannst es glaub ich casten (einfach googlen)
    also zB so:

    <input type="hidden" name="preis" value="<?php
    if($SHOP_CUSTOMERDATA['level'] != !) {
    $preis = (int)$preis * 0,81;
    }
    echo $preis;
    ?>">


    mfg

    Sei immer du selbst. Außer du kannst Batman sein. Sei immer Batman!

  • Hi ich habs jetzt glaub ich, aber jetzt ist es genau umgekehrt,
    also wenn ich nicht eingeloggt bin sehe ich den preis ohne steuer und

    wenn ich eingeloggt bin(also der preis ohne steuer angezeigt werden soll) sehe ich den normalen preis.

    wie geht das, ein bisschen sehe ich ja jetzt durch aber halt noch nicht wirklich

  • wenn dus genau umgekehrt hast, dann mach aus dem != (heisst ungleich) ein == (gleich)

    Sei immer du selbst. Außer du kannst Batman sein. Sei immer Batman!

  • Hallo

    Na endlich klappt es vielen Dank, jetzt muss ich nur noch hinbekommen das nur 2 Dezimalstellen angezeigt werden.


    vielen, vielen Dank

  • das machst du dann so:
    $item_price = $preis_real * 0.81;
    $item_price = round($item_price, 2);

    mfg

    Sei immer du selbst. Außer du kannst Batman sein. Sei immer Batman!