Home > Software engineering >  have multiple alert boxes in a contact form
have multiple alert boxes in a contact form

Time:05-31

Hello i am trying to do a contact form that gives me an alert box when i press the submit button (e.g. one alert box for "form could not be submitted" and one for "form was successfully submitted") How can i do this? Does it work with if/else ?

I worked with html/php/js for the form, below is my code (sorry for german)

                $anrede = $vorname = $nachname = $anschrift = $postleitzahl = $stadt = $email = $telefon = $nachricht = "";

                if ($_SERVER["REQUEST_METHOD"] == "POST") {
                    if (empty($_POST["anrede"])) {
                        $anredeErr = "* Anrede wird benötigt";
                    } else {
                        $anrede = test_input($_POST["anrede"]);
                    }

                    if (empty($_POST["vorname"])) {
                        $vornameErr = "* Vorname wird benötigt";
                    } else {
                        $vorname = test_input($_POST["vorname"]);
                        if (!preg_match("/^[a-zA-Z]*$/",$vorname)) {
                            $vornameErr = "* Nur Buchstaben erlaubt";
                        }
                    }

                    if (empty($_POST["nachname"])) {
                        $nachnameErr = "* Nachname wird benötigt";
                    } else {
                        $nachname = test_input($_POST["nachname"]);
                        if (!preg_match("/^[a-zA-Z]*$/",$nachname)) {
                            $nachnameErr = "* Nur Buchstaben erlaubt";
                        }
                    }

                    if (empty($_POST["anschrift"])) {
                        $anschriftErr = "* Anschrift wird benötigt";
                    } else {
                        $anschrift = test_input($_POST["anschrift"]);
                    }

                    if (empty($_POST["postleitzahl"])) {
                        $postleitzahlErr = "* Postleitzahl wird benötigt";
                    } else {
                        $postleitzahl = test_input($_POST["postleitzahl"]);
                        if (!preg_match("/^[0-9]*$/",$postleitzahl)) {
                            $postleitzahlErr = "* Nur Zahlen erlaubt";
                        }
                    }

                    if (empty($_POST["stadt"])) {
                        $stadtErr = "* Stadt / Ort wird benötigt";
                    } else {
                        $stadt = test_input($_POST["stadt"]);
                        if (!preg_match("/^[a-zA-Z-' ]*$/",$stadt)) {
                            $stadtErr = "* Nur Buchstaben und Leerzeichen erlaubt";
                          }
                    }

                    if (empty($_POST["email"])) {
                        $emailErr = "* E-Mail wird benötigt";
                    } else {
                        $email = test_input($_POST["email"]);
                        if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
                            $emailErr = "* Falsches E-Mail Format";
                        }
                    }

                    if (empty($_POST["telefon"])) {
                        $telefon = "";
                    } else {
                        $telefon = test_input($_POST["telefon"]);
                        if (!preg_match("/^[0-9]*$/",$telefon)) {
                            $telefonErr = "* Nur Zahlen erlaubt";
                        }
                    }

                    if (empty($_POST["nachricht"])) {
                        $nachrichtErr = "Nachricht wird benötigt";
                    } else {
                        $nachricht = test_input($_POST["nachricht"]);
                    }    
                }

                function test_input($data) {
                    $data = trim($data);
                    $data = stripslashes($data);
                    $data = htmlspecialchars($data);
                    return $data;
                }
                ?>

                <div id="kontaktformular-container">
                    <h2 >Schreiben Sie uns eine E-Mail.<br></h2>
                    <h1 >Kontaktformular</h1>
                    <form  action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" method="POST">
                        <div >
                            <i ></i>
                            <input  type="text" id="anrede" name="anrede" placeholder="Anrede *" value="<?php echo $anrede ?>">
                            <span ><?php echo $anredeErr;?></span>
                            <br>
                        </div>
                        <div >
                            <i ></i>
                            <input  type="text" id="vorname" name="vorname" placeholder="Vorname *" value="<?php echo $vorname ?>">
                            <span ><?php echo $vornameErr;?></span>
                            <br>
                        </div>
                        <div >
                            <i ></i>
                            <input  type="text" id="nachname" name="nachname" placeholder="Nachname *" value="<?php echo $nachname ?>">
                            <span ><?php echo $nachnameErr;?></span>
                            <br>
                        </div>
                        <div >
                            <i ></i>
                            <input  type="text" id="anschrift" name="anschrift" placeholder="Anschrift *" value="<?php echo $anschrift ?>">
                            <span ><?php echo $anschriftErr;?></span>
                            <br>
                        </div>
                        <div >
                            <i ></i>
                            <input  type="text" id="postleitzahl" name="postleitzahl" placeholder="Postleitzahl *" value="<?php echo $postleitzahl ?>">
                            <span ><?php echo $postleitzahlErr;?></span>
                            <br>
                        </div>
                        <div >
                            <i ></i>
                            <input  type="text" id="stadt" name="stadt" placeholder="Stadt / Ort *" value="<?php echo $stadt ?>">
                            <span ><?php echo $stadtErr;?></span>
                            <br>
                        </div>
                        <div >
                            <i ></i>
                            <input  type="text" id="email" name="email" placeholder="E-Mail-Adresse *" value="<?php echo $email ?>">
                            <span ><?php echo $emailErr;?></span>
                            <br>
                        </div>
                        <div >
                            <i ></i>
                            <input  type="text" id="telefon" name="telefon" placeholder="Telefon" value="<?php echo $telefon ?>">
                            <br>
                        </div>
                        <div >
                            <i ></i>
                            <textarea  id="nachricht" name="nachricht" rows="10" placeholder="Ihre Nachricht *"><?php echo $nachricht ?></textarea>
                            <span ><?php echo $nachrichtErr;?></span>
                            <br>
                        </div>
                        <br>
                        <p >Mit einem * markierte Felder sind Pflichtfelder.</p>
                        <br>
                        <p >Mit dem Absenden des Formulares akzeptieren Sie die <span ><a  href="#">Bestimmungen zum<br>Datenschutz</a></span> und willigen ein von uns per E-Mail/Telefon kontaktiert zu werden.</p>
                        <br>
                        <input  onclick="submitted()" type="submit" name="anfrage absenden" value="Anfrage absenden">
                        <script>
                        function submitted() {
                            alert("Nachricht erfolgreich abgeschickt!");
                        }
                        </script>```

CodePudding user response:

I can't add a comment because I'm new and have no reputation If this is the solution or not, please let me know.

At first give form id='contact'

then give submit input id='anfrage'

This code will check the entries if they are empty or not and will give an alert for each entry.. In the end it will give a warning that the command has been completed successfully and will send the forms.

js code:

<script>

        if($('#contact').length){
        $('#anfrage').click(function(){
        var o = new Object();
        var form = '#contact';
        var anrede = $('#contact #anrede').val();
        var vorname = $('#contact #vorname').val();
        var nachname = $('#contact #nachname').val();
        var anschrift = $('#contact #anschrift').val();
        var postleitzahl = $('#contact #postleitzahl').val();
        var stadt = $('#contact #stadt').val();
        var email = $('#contact #email').val();
        var telefon = $('#contact #telefon').val();
        var nachricht = $('#contact #nachricht').val();
        
        if(anrede == '')
        {
             alert("Nachricht erfolgreich abgeschickt1!");
            return false;
        }
        else if(vorname == '')
        {
            alert("Nachricht erfolgreich abgeschickt2!");
            return false;
        }
        else if(nachname == '')
        {
            alert("Nachricht erfolgreich abgeschickt3!");
            return false;
        }
        else if(anschrift == '')
        {
            alert("Nachricht erfolgreich abgeschickt4!");
            return false;
        }
        else if(postleitzahl == '')
        {
            alert("Nachricht erfolgreich abgeschickt5!");
            return false;
        }
        else if(stadt == '')
        {
            alert("Nachricht erfolgreich abgeschickt!");
            return false;
        }
        else if(email == '')
        {
            alert("Nachricht erfolgreich abgeschickt!");
            return false;
        }
        else if(telefon == '')
        {
            alert("Nachricht erfolgreich abgeschickt!");
            return false;
        }
        else if(nachricht == '')
        {
            alert("Nachricht erfolgreich abgeschickt!");
            return false;
        }
        else{
            alert("checked!");
            return true;
            }
       
    });
}
  • Related