首页 > 解决方案 > 计算数量和总指定价格

问题描述

我正在做一个购买物品的小练习,我有如何让它工作的想法,但是,我找不到给我购买产品总价格结果的关键。我在 PHP 中工作。基本上我想做的是,如果你买了 5 支笔,然后将这 0.50 笔的成本乘以 5,然后告诉我要支付的总额。(忘记最后的 $ book 变量,因为即使我将购买的书籍总数乘以,我也无法弄清楚其余产品如何计算)。

session_start();
$_SESSION["nombre"] = "Comprador";
echo "<p><b><u>Bienvenido $_SESSION[nombre]</u></b></p>";

//PRECIOS DE LOS ARTICULOS
$books = 1.50;
$pen = 0.50;
$stapler = 3.00;
$cardboard = 0.90;
$File = 0.20;
$pencil = 0.10;
$Kit = 5.50;

//CHOOSE THE PRODUCT
if(isset($_SESSION['nombre'])==true) 
{
    if($_POST['articulo']==1)
    {
        echo "You will buy: book";
    }

    elseif($_POST['articulo']==2)
    {
        echo "You will buy: pen";
    }

    elseif($_POST['articulo']==3)
    {
        echo "You will buy: stapler";
    }

    elseif($_POST['articulo']==4)
    {
        echo "You will buy: cardboard";
    }

    elseif($_POST['articulo']==5)
    {
        echo "You will buy: File";
    }

    elseif($_POST['articulo']==6)
    {
        echo "You will buy: Pencil";
    }

    elseif($_POST['articulo']==7)
    {
        echo "You will buy: Kit";
    }

    else
    {
        echo "ERROR: Your cart is empty :(";
    }

    //HOW MANY?
      if(isset($_POST['number']))
      {
        if(!empty($_POST['number']))
        {
            echo "<br/>";
            $number=$_POST['number'];
            echo "Cantidad a comprar: " . $number;
        }

        else
        {
            echo "<br/>";
            echo "Fail: You must choose how many will buy";
            echo "<br>";
            echo "<a href='inicio.php'> Cancelar </a>";
        }
      }
}

//PAY

if (isset($_POST['articulo']) && isset($_POST['number']))
{
    echo "<br/>";
    echo "You have to pay: " . $number * $book . " €.";
    echo "<br>";
    echo "<br>";
    echo "<a href='pedidos.php'> Pay it </a>";
    echo "<br>";
    echo "<a href='inicio.php'> Volver </a>";
}


//FAIL SEASSON
else
{
    echo "no se ha iniciado la sesión";
}

    ?>
<h1>WELLCOME!</h1>

<form id="inicio" method="post" action="carrito.php">
    <p>
        <select name="articulo">
            <option value=""></option>
            <option value="1">Books - 1.50€&lt;/option> 
            <option value="2">Pens - 0.50€&lt;/option> 
            <option value="3">stapler - 3.00€&lt;/option>
            <option value="4">Cardboard - 0.90€&lt;/option> 
            <option value="5">File - 0.20€&lt;/option> 
            <option value="6">Pencil - 0.10€&lt;/option>
            <option value="7">Kit - 5.00€&lt;/option>
         </select>
    </p>
    
    <p>
        <label for="nombre">How many do you want to buy?</label>
        <br/>
        <br/>
        <input type="number" name="number" id="number">
    </p>

    <p>
        <input type="submit" name="submit" id="submit" value="Añadir al carrito">
    </p>

标签: phphtmlcss

解决方案


有很多方法可以让用户建立一个装满商品的购物车然后计算价格,但我相信这超出了这个问题的范围。

就您上面显示的单一场景而言。即用户购买了 X 个单件商品。然后对您的代码的一个小调整是定义一个 $total 变量,在文件开头设置为零。

然后在您的条件 if 块中,例如它等于 2 '笔'。将笔的价值乘以物品的数量,然后将其添加到您的总数中。然后显示总数。

如果您想允许添加其他项目,那么您可以将第一个选择(即 5 支笔)存储到一个数组中,然后将该数组保存为会话变量。然后在每次后续加载页面时,读取数组并将所有项目添加到 $total 变量。


推荐阅读