[PHP] Frage zur Aufgabe

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • [PHP] Frage zur Aufgabe

      Hey!

      Bräuchte mal eure Fachkenntnis in PHP!

      Bin gerade dabei eine Aufgabe vom Buch zu Lösen!


      Folgend bin ich soweit:

      PHP-Quellcode

      1. <html>
      2. <body>
      3. <form method="post" >
      4. <p>Bitte geben Sie Menge und Sorte ein:</p>
      5. <p><input name="ml" /> Menge in Liter <br /></p>
      6. <p><input name="son" /> Sorte (S oder N)<br /></p>
      7. <p><input type="submit" value="Best&auml;tigen" />
      8. <input type="reset" value="Zur&uuml;cksetzen" /></p>
      9. </form>
      10. <?php
      11. if ($_POST["son"] == "N")
      12. {
      13. $erg = $_POST["ml"] * "1.35" ;
      14. echo $_POST["ml"] . " Liter Normal kosten " . $erg . " &euro;";
      15. }
      16. elseif ($_POST["ml"] >= "100")
      17. {
      18. $erg = $_POST["ml"] * "1.35" * "98" / "100" ;
      19. echo $_POST["ml"] . " Liter Normal kosten " . $erg . " &euro;";
      20. }
      21. if ($_POST["son"] == "S")
      22. {
      23. $erg = $_POST["ml"] * "1.40" ;
      24. echo $_POST["ml"] . " Liter Super kosten " . $erg . " &euro;";
      25. }
      26. elseif ($_POST["ml"] >= "100")
      27. {
      28. $erg = $_POST["ml"] * "1.40" * "98" / "100" ;
      29. echo $_POST["ml"] . " Liter Normal kosten " . $erg . " &euro;";
      30. }
      31. ?>
      32. </body>
      33. </html>
      Alles anzeigen


      Nun sieht es dann so aus:


      Man sieht es kommen die 2 Ergebnisse raus, wobei das
      2. Falsch ist.

      Wie bekomme ich es hin, da wenn man über 100 Liter tankt
      das bei beiden 2% abgezogen werden und jeweils 1 Angezeigt wird?

      Ich habe es selber geschrieben, und lerne es auch.
      ALSO KEIN Copy & Paste. ;)
    • Werbung zur Unterstützung des Forums ( Bitte AddBlocker deaktivieren )

    • Suru;268156 schrieb:

      Wenn du nicht mal weißt was eine "Variable" ist lern erst mal die grundkenntnisse ^^


      Was eine Variable ist, weis ich ja.

      Nicht zu schnell Lesen! ;)

      Bsp.

      PHP-Quellcode

      1. $a = 1;

      $a <- Variable
      1; <- Inhalt

      Grundkenntnisse habe ich ja, bin ja gerade dabei mir die Anzueignen.
      Nur mit der Aufgabe komm ich nicht zurrecht wie ich die Lösen kann.
    • PHP-Quellcode

      1. <html>
      2. <body>
      3. <form method="post" >
      4. <p>Bitte geben Sie Menge und Sorte ein:</p>
      5. <p><input name="ml" /> Menge in Liter <br /></p>
      6. <p><input name="son" /> Sorte (S oder N)<br /></p>
      7. <p><input type="submit" value="Best&auml;tigen" />
      8. <input type="reset" value="Zur&uuml;cksetzen" /></p>
      9. </form>
      10. <?php
      11. if (($_POST["son"] == "N")&&($_POST["ml"] < "100"))
      12. {
      13. $erg = $_POST["ml"] * "1.35" ;
      14. echo $_POST["ml"] . " Liter Normal kosten " . $erg . " &euro;";
      15. }
      16. elseif (($_POST["son"] == "N")&&($_POST["ml"] >= "100"))
      17. {
      18. $erg = $_POST["ml"] * "1.35" * "98" / "100" ;
      19. echo $_POST["ml"] . " Liter Normal kosten " . $erg . " &euro;";
      20. }
      21. if (($_POST["son"] == "S")&&($_POST["ml"] < "100"))
      22. {
      23. $erg = $_POST["ml"] * "1.40" ;
      24. echo $_POST["ml"] . " Liter Super kosten " . $erg . " &euro;";
      25. }
      26. elseif (($_POST["son"] == "S")&&($_POST["ml"] >= "100"))
      27. {
      28. $erg = $_POST["ml"] * "1.40" * "98" / "100" ;
      29. echo $_POST["ml"] . " Liter Super kosten " . $erg . " &euro;";
      30. }
      31. ?>
      Alles anzeigen


      du musst die if-Abfragen besser definieren.
    • Du rechnest erst den Preis aus, speicherst den in einer Variable, beispielsweise Preis_Ohne_Rabatt.
      Dann rechnest du den Rabatt aus: Rabatt=Preis_Ohne_Rabatt*0.02 - das speicherst du in Rabatt.
      Anschließend speicherst du in Endpreis die Rechnung Preis_Ohne_Rabatt - Rabatt.
      Diese Variable Endpreis lässt du dann als Preis ausgeben. Das ganze machst du natürlich nur in dem Codeblock der die Bedingung Liter<=100 erfüllt.

      lg