尝试添加重复电子邮件时在 php 文件中出现致命错误

问题描述 投票:0回答:0

我正在使用 create.php 文件将新客户端添加到 MyShop 数据库,当添加重复的电子邮件时,我应该会收到此错误:How it is supposed to look

取而代之的是,当我单击提交时出现致命错误:I am getting this

在这里为您提供我的代码:

<?php
$servername = "localhost";
$username = "root";
$password = "";
$database = "MyShop";

// create connection
$connection = new mysqli($servername, $username, $password, $database);


    $name = "";
    $email = "";
    $phone ="";
    $address ="";

    $errorMessage = "";
    $successMessage = "";

    if ($_SERVER['REQUEST_METHOD'] == 'POST') {
        $name = $_POST["Stranka"];
        $email = $_POST["Email"];
        $phone = $_POST["Telefon"];
        $address = $_POST["Naslov"];

        do {
               if (empty($name) || empty($email) || empty($phone) || empty($address)) {
                $errorMessage = "Vsa polja so obvezna";
                break;
               } 

                //add new client to database

                $sql = "INSERT INTO clients (name, email, phone, address)" .
                "VALUES ('$name', '$email', '$phone', '$address')";
                $result = $connection ->query($sql);

                if (!$result) {
                    $errorMessage = "Invalid query: " . $connection->error;
                    break;
                }

                $name = "";
                $email = "";
                $phone ="";
                $address ="";

                $successMessage = "Uspešno dodano";

                header("location: /MyShop/index.php");
                exit;

        } while (false);
    }
?>

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Trenutne stranke</title>
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css">
    <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js"></script>
</head>
<body>
    <div class="container my-5">
        <h2>Dodaj stranko</h2>
        <?php
        if (!empty($errorMessage)) {
            echo "
            <div class='alert alert-warning alert-dismissible fade show' role='alert'>
            <strong>$errorMessage</strong>
            <button type='button' class='btn-close' data-bs-dismiss='alert' aria-label='Close'></button>
            </div>
            ";
        }
        ?>
        <form method="post">
            <div class="row mb-3">
                <label class="col-sm-3 col-form-label">Stranka</label>
                <div class="col-sm-6">
                    <input type="text" class="form-control" name="Stranka" value="<?php echo $name ?>">
                </div>
            </div>

            <div class="row mb-3">
                <label class="col-sm-3 col-form-label">Email</label>
                <div class="col-sm-6">
                    <input type="text" class="form-control" name="Email" value="<?php echo $email ?>">
                </div>
            </div>

            <div class="row mb-3">
                <label class="col-sm-3 col-form-label">Telefon</label>
                <div class="col-sm-6">
                    <input type="text" class="form-control" name="Telefon" value="<?php echo $phone ?>">
                </div>
            </div>

            <div class="row mb-3">
                <label class="col-sm-3 col-form-label">Naslov</label>
                <div class="col-sm-6">
                    <input type="text" class="form-control" name="Naslov" value="<?php echo $address ?>">
                </div>
            </div>

            <?php
            if (!empty($successMessage)) {
                echo "
                <div class='row mb-3'>
                    <div class='offset-sm-3 col-sm-6'>
                        <div class='alert alert-success alert-dismissible fade show' role='alert'>
                        <strong>$successMessage</strong>
                        <button type='button' class='btn-close' data-bs-dismiss='alert' aria-label='Close'></button>
                        </div>
                    </div>
                </div>
                ";
            }
            ?>


            <div class="row mb-3">
                <div class="offset-sm-3 col-sm-3 d-grid">
                    <button type="submit" class="btn btn-primary">Dodaj</button>
                </div>
                <div class="col-sm-3 d-grid">
                <a class="btn btn-outline-primary" href="/myshop/index.php" role="button">Prekliči</a>
                </div>
                

            </div>

            
        </form>

    </div>
    
</body>
</html>

我做错了什么?

我期待它看起来像这样How it is supposed to look 不确定我在按照说明做错什么。

php mysql mysqli phpmyadmin
© www.soinside.com 2019 - 2024. All rights reserved.