PHP - оповещения с входами отображаются не вовремя - PullRequest
0 голосов
/ 06 февраля 2019

Я новичок в PHP и работаю над своим первым заданием в колледже.У меня есть проблема, которую я не могу исправить.У меня есть предупреждения на странице index.php, которые должны появляться только тогда, когда пользователь пытается отправить данные для подтверждения и данные отсутствуют или неверны.В настоящее время, когда страница загружается, оповещения работают так, как они должны, и появляются, только если пользователь пытается «вычислить» страницу с отсутствующими или неверными данными.После вычислений пользователь нажимает кнопку «Подтвердить», которая переводит их на вторую страницу Подтверждение.php. Оттуда пользователь сможет нажать «Возврат» и вернуться на первую страницу.Это работает как надо, но теперь у меня есть предупреждения рядом с полями ввода, когда пользователь возвращается на первую страницу.Они не должны отображаться в это время.Я не знаю, как это исправить.Помогите, пожалуйста?

<?php
/**
 * Student: Sherrie Teague
 * Server-Side Programming
 * Date: 2/6/2019
 * HW2 - Quote
 */


/*
 * Course : Server-Side Programming
 * Student: Sherrie Teague
 * Assignment: HW2 - Quote
 * Date : 2/6/2019
*/

// get the data from the form
$sales_price = filter_input(INPUT_POST,'sales_price', FILTER_VALIDATE_FLOAT);
$discount_percent = filter_input(INPUT_POST,'discount_percent',FILTER_VALIDATE_FLOAT);
$total_price = filter_input(INPUT_POST,'total_price', FILTER_VALIDATE_FLOAT);


if( isset( $_POST['confirmSubmit'] )) {
    echo 'Validation Error';
    // or store it in a variable and post later
    $validation_error = 'Validation Error';
}

$sales_valid = true;
$sales_priceError = '';
if ($sales_price === FALSE) {
    $sales_priceError = 'Sales price must be a valid amount';
    $sales_valid = false;
} else if ($sales_price < 1.0) {
    $sales_priceError = 'Sales price must be greater than 0';
    $sales_valid = false;
}

$discount_valid = true;
$discount_percentError = '';
// validate discount_percent
if ($discount_percent === FALSE) {
    $discount_percentError = 'Discount percent must be a valid amount';
    $discount_valid = false;
} else if ($discount_percent < 1.0) {
    $discount_percentError = 'Discount percent must be greater than 0';
    $discount_valid = false;
}


// calculate the discount and the discounted price
$discount_amount = $sales_price * $discount_percent / 100;
$total_price = $sales_price - $discount_amount;

?>

<!doctype html>
<html lang="en">
<head>
    <title>Quote</title>
    <link rel="stylesheet" type="text/css" href="quote.css">
</head>
<body>
<section>
    <h1>Price Quotation</h1>
    <form id="priceForm" name="priceForm" method="post" action=''>
        <label for="sales_price">Sales Price </label>
        <input type="text" id="sales_price" name="sales_price" required
               value="<?php echo $sales_price; ?>"/>
        <?php if (!empty($sales_priceError)) : ?>
            <span style="color:red;background-color: white">
                    <?php echo $sales_priceError; ?>
            </span>
        <?php endif; ?>
        <br/>
        <br/>
        <label for="discount_percent">Discount Percent </label>
        <input type="text" id="discount_percent" name="discount_percent" required
               value="<?php echo $discount_percent; ?>"/>
        <?php if (!empty($discount_percentError)) : ?>
            <span style="color:red;background-color: white">
                    <?php echo $discount_percentError; ?>
                </span>
        <?php endif; ?>
        <p class="discount">Discount Amount <?php echo '&nbsp;&nbsp;&nbsp;&nbsp;$' . number_format($discount_amount, 2); ?></p>
        <p class="total">Total Price <?php echo '&nbsp;&nbsp;&nbsp;&nbsp;$' . number_format($total_price, 2); ?></p>
        <input type="submit" class=inline name="submitButton" id="submitButton" value="Calculate"/>
    </form>

    <!--     <form id="confirmForm" name="confirmForm" method="post" action="confirm.php">-->
    <form id="confirmForm" name="confirmForm" method="post" action="<?php echo (( $sales_valid && $discount_valid ) ? 'confirm.php' : ''); ?>">
        <input type="hidden" id="sales_price" name="sales_price" value="<?php echo $sales_price ?>" />
        <input type="hidden" id="discount_amount" name="discount_amount" value="<?php echo $discount_amount ?>"/>
        <input type="hidden" id="total_price" name="total_price" value="<?php echo $total_price ?>"/>
        <input type="submit" class= inline name="confirmSubmit" id="confirmSubmit" value="Confirm"/>
    </form>

    <div>
        <p> Enter price and discount amount and click Calculate</p>
    </div>
</section>
</body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...