Как исправить отсутствие переменных, отображаемых в почтовом запросе PHP?

Я настраиваю веб-сайт и хочу иметь возможность получить ввод номера клиента для того, сколько пицц они хотят заказать в Detailedsauceandquantitypage.html и разместить номер на ShoppingCartpage.php

Я уже пытался сделать свой файл файлом php. Я уже пробовал использовать POST. Проблема, с которой я сталкиваюсь сейчас, заключается в том, что я не могу вывести количество пицц, заказанных на странице ShoppingCart.php.

Подробная информация о соусе и количестве page.html

<!DOCTYPE html>
    <html>
        <head>
            <script src = "script.js"></script>
            <title>Detailed sauce and quantity page</title>
        </head>

        <body>
            <h1>Detailed sauce and quantity page</h1>

            <form action = "ShoppingCartpage.php" method = "POST">

                <img src = "bbq.jpg" alt = "BBQ">
                <label for = "numberOfSauces">Number of Pizzas (0-100):</label>
                <input type = "number" name = "bbqPizza" min = "0" max = "100">
                <input type = "submit" value = "Add this sauce to pizza">

                <br>

                <img src = "tomato.jpg" alt = "Tomato">
                <label for = "numberOfSauces">Number of Pizzas (0-100):</label>
                <input type = "number" name = "tomatoPizza" min = "0" max = "100">
                <input type = "submit" value = "Add this sauce to pizza">

                <br>

                <img src = "salsa.jpg" alt = "Salsa">
                <label for = "numberOfSauces">Number of Pizzas (0-100):</label>
                <input type = "number" name = "salsaPizza" min = "0" max = "100">
                <input type = "submit" value = "Add this sauce to pizza">

                <br>
            </form>
        </body>
    </html>

ShoppingCartpage.php

<!DOCTYPE html>
<html>
    <head>
        <title>Shopping Cart page</title>
    </head>
    <body>
        <h1>Shopping Cart page</h1>
        <?php
        // define variables and set to empty values
        $bbqPizza = $tomatoPizza = $salsaPizza = "";

        if ( isset( $_POST['submit'] ) ) {
            $bbq = $_POST["bbqPizza"];
            $tomato = $_POST["tomatoPizza"];
            $salsa = $_POST["salsaPizza"];
            echo $bbq . " " . $tomato . $salsa . "\n"; die("Please 
        work!");
        }
        ?>
        <a href = "OnlinePizzaOrderingPage.html">Add more pizzas to cart</a>
        <a href = "Checkoutpage.html">Go to checkout</a>
    </body>
</html>
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
0
54
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Вы должны добавить имя вашей кнопки ввода, как это.

<input type = "submit" value = "Add this sauce to pizza." name = "submit">

POST читается имя ввода, а не тип, поэтому вам нужно добавить имя.

Ответ принят как подходящий

1.Только одна кнопка отправки в форме нужна (в конце формы перед </form>)

<!DOCTYPE html>
    <html>
        <head>
            <script src = "script.js"></script>
            <title>Detailed sauce and quantity page</title>
        </head>

        <body>
            <h1>Detailed sauce and quantity page</h1>

            <form action = "ShoppingCartpage.php" method = "POST">

                <img src = "bbq.jpg" alt = "BBQ">
                <label for = "numberOfSauces">Number of Pizzas (0-100):</label>
                <input type = "number" name = "bbqPizza" min = "0" max = "100">

                <br>

                <img src = "tomato.jpg" alt = "Tomato">
                <label for = "numberOfSauces">Number of Pizzas (0-100):</label>
                <input type = "number" name = "tomatoPizza" min = "0" max = "100">

                <br>

                <img src = "salsa.jpg" alt = "Salsa">
                <label for = "numberOfSauces">Number of Pizzas (0-100):</label>
                <input type = "number" name = "salsaPizza" min = "0" max = "100">

                <br>
                <input type = "submit" name = "submit" value = "Add this sauce to pizza">
            </form>
        </body>
    </html>

2. Добавьте атрибут name к кнопке.

3. Вам нужно немного изменить код PHP

<!DOCTYPE html>
<html>
    <head>
        <title>Shopping Cart page</title>
    </head>
    <body>
        <h1>Shopping Cart page</h1>
        <?php
            $bbq    = ( !empty($_POST["bbqPizza"]) ) ? $_POST["bbqPizza"] : 0;
            $tomato = ( !empty($_POST["tomatoPizza"]) ) ? $_POST["tomatoPizza"] : 0;
            $salsa  = ( !empty($_POST["salsaPizza"]) ) ? $_POST["salsaPizza"] : 0;
            echo $bbq . " " . $tomato . $salsa . "\n"; die("Please work!");

        ?>
        <a href = "OnlinePizzaOrderingPage.html">Add more pizzas to cart</a>
        <a href = "Checkoutpage.html">Go to checkout</a>
    </body>
</html>

Примечание. Всегда старайтесь проверять данные POST вместо кнопки submit.

Другие вопросы по теме