邮件给我发送了一条空白消息

时间:2016-09-23 08:32:35

标签: php email

大家好,

如果您单击实际应该发生的提交按钮,则使用此表单发送和发送空邮件。在此之前,每当我填写描述textarea而不是我时,你看不到描述,但其余的细节都没问题。

所以我的问题是究竟发生了什么?

这是模态:

<div class="modal fade" id="modal" tabindex="-1" role="dialog" aria-labelledby="MAXDATA Support">
<div class="modal-dialog" role="document">
<div class="modal-content">
    <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
        <h3 class="modal-title" id="maxdata-title">Reparaturauftrag / VAT</h3>
    </div>
    <form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" method="post">
        <div class="modal-body">
            <div class="row">
                <div class="col-md-12">
                    <p class="text-danger">* Pflichtfelder</p>
                </div>
                <div class="col-sm-6">
                    <div class="checkbox">
                        <label>
                            <input type="checkbox" name="vorabaustausch" <?php if (isset($vorabaustausch) && $vorabaustausch=="Vorabaustausch") echo "checked";?> value="Vorabaustausch"> Vorabaustausch
                        </label>
                    </div>
                    <div class="form-group">
                        <label for="defektesGereat">Defektes Gerät *</label>
                        <input type="text" name="defektesGereat" class="form-control" id="defektesGereat" value="<?php echo $defektesGereat;?>">
                        <p class="text-danger"><?php echo $def_err;?></p>
                    </div>
                    <div class="form-group">
                        <label for="artikelnummer">Artikelnummer *</label>
                        <input type="text" name="artikelnr" class="form-control" id="artikelnummer" value="<?php echo $artikelnr;?>">
                        <p class="text-danger"><?php echo $artikelnr_err;?></p>
                    </div>
                    <div class="form-group">
                        <label for="firma">Firma *</label>
                        <input type="text" name="firma" class="form-control" id="firma" value="<?php echo $firma;?>">
                        <p class="text-danger"><?php echo $firma_err; ?></p>
                    </div>
                    <div class="form-group">
                        <label for="strasse">Strasse *</label>
                        <input type="text" name="strasse" class="form-control" id="strasse" value="<?php echo $strasse;?>">
                        <p class="text-danger"><?php echo $strasse_err;?></p>
                    </div>
                    <div class="form-group">
                        <label for="email">Email *</label>
                        <input type="email" name="email" class="form-control" id="email" value="<?php echo $email;?>">
                        <p class="text-danger"><?php echo $email_err;?></p>
                    </div>
                </div>
                <div class="col-sm-6">
                    <div class="checkbox">
                        <label>
                            <input type="checkbox" name="waranty" <?php if (isset($waranty) && $waranty=="Garantiereparatur") echo "checked";?> value="Garantiereparatur"> Garantiereparatur
                        </label>
                    </div>
                    <div class="form-group">
                        <label for="serial">Seriennummer *</label>
                        <input type="text" name="serial" class="form-control" id="serial" value="<?php echo $serial;?>">
                        <p class="text-danger"><?php echo $serial_err;?></p>
                    </div>
                    <div class="form-group">
                        <label for="kundennummer">KdNr / Verkäufer *</label>
                        <input type="text" name="kdnr" class="form-control" id="kundennummer" value="<?php echo $kdnr;?>">
                        <p class="text-danger"><?php echo $kdnr_err;?></p>
                    </div>
                    <div class="row">
                        <div class="form-group col-sm-6">
                            <label for="name">Name *</label>
                            <input type="text" name="name" class="form-control" id="name" value="<?php echo $name;?>">
                            <p class="text-danger"><?php echo $name_err;?></p>
                        </div>
                        <div class="form-group col-sm-6">
                            <label for="vorname">Vorname *</label>
                            <input type="text" name="vorname" class="form-control" id="vorname" value="<?php echo $vorname;?>">
                            <p class="text-danger"><?php echo $vorname_err;?></p>
                        </div>
                    </div>
                    <div class="row">
                        <div class="form-group col-sm-5">
                            <label for="zip">PLZ *</label>
                            <input type="number" name="zip" class="form-control" id="zip" value="<?php echo $zip;?>">
                            <p class="text-danger"><?php echo $zip_err;?></p>
                        </div>
                        <div class="form-group col-sm-7">
                            <label for="ort">Ort *</label>
                            <input type="text" name="ort" class="form-control" id="ort" value="<?php echo $ort;?>">
                            <p class="text-danger"><?php echo $ort_err;?></p>
                        </div>
                    </div>
                    <div class="form-group">
                        <label for="phone">Telefon <small>(tagsüber)</small> *</label>
                        <input type="tel" name="phone" class="form-control" id="phone" value="<?php echo $phone;?>">
                        <p class="text-danger"><?php echo $phone_err;?></p>
                    </div>
                </div>
                <div class="col-sm-12">
                    <div class="form-group">
                        <label for="descr">Fehlerbeschreibung *</label>
                        <textarea class="form-control" name="descr" rows="5" style="resize:none;"><?php echo $descr;?></textarea>
                        <p class="text-danger"><?php echo $descr_err;?></p>
                    </div>
                    <div class="checkbox">
                        <label>
                            <input type="checkbox" name="confirmation"> Bitte schicken Sie mir eine Bestätigungsmail.
                        </label>
                    </div>
                </div>
            </div>
        </div>
        <div class="modal-footer">
            <button type="reset" class="btn btn-default" data-dismiss="modal">Close</button>
            <button type="submit" name="submit" class="btn btn-maxdata">Senden</button>
        </div>
    </form>
</div>
</div>

这是PHP代码:

<?php
$vorabaustausch = $waranty = $defektesGereat = $serial = $artikelnr = $kdnr = $firma = $name = $vorname = $strasse = $zip = $ort = $email = $phone = $descr = "";

$artikelnr_err = $serial_err = $def_err = $name_err = $email_err = $strasse_err = $zip_err = $ort_err = $phone_err = $descr_err = $vorname_err = "";

if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $vorabaustausch = test_input($_POST["vorabaustausch"]);
    $waranty = test_input($_POST["waranty"]);

    if (empty($_POST['defektesGereat'])) {
        $def_err = 'Wie heisst Ihr defektes Gerät?';
    } else {
        $defektesGereat = test_input($_POST["defektesGereat"]);
    }

    if (empty($_POST["serial"])) {
        $serial_err = "Serialnummer angeben!";
    } else {
        $serial = test_input($_POST["serial"]);
    }

    if (empty($_POST["artikelnr"])) {
        $artikelnr_err = "Artikelnummer angeben!";
    } else {
        $artikelnr = test_input($_POST["artikelnr"]);
    }

    if (empty($_POST["kdnr"])) {
        $kdnr_err = "Kundennummer angeben!";
    } else {
        $kdnr = test_input($_POST["kdnr"]);
    }

    if (empty($_POST["firma"])) {
        $firma_err = "Firma angeben!";
    } else {
        $firma = test_input($_POST["firma"]);
    }

    // check if name only contains letters and whitespace
    if (empty($_POST['name'])) {
        $name_err = "Bitte Ihren Namen angeben!";
    } else {
        $name = test_input($_POST["name"]);
        if (!preg_match("/^[a-zA-Z ]*$/",$name)) {
            $name_err = "Bitte NUR Buchstaben eingeben!";
        }
    }

    if (empty($_POST['vorname'])) {
        $name_err = "Bitte Ihren Vornamen angeben!";
    } else {
        $vorname = test_input($_POST["vorname"]);
        if (!preg_match("/^[a-zA-Z ]*$/",$vorname)) {
            $vorname_err = "Bitte NUR Buchstaben eingeben!";
        }
    }

    if (empty($_POST["strasse"])) {
        $strasse_err = "Strasse angeben!";
    } else {
        $strasse = test_input($_POST["strasse"]);
    }

    if (empty($_POST["zip"])) {
        $zip_err = "Postleitzahl angeben!";
    } else {
        $zip = test_input($_POST["zip"]);
    }

    if (empty($_POST["ort"])) {
        $ort_err = "Ort angeben!";
    } else {
        $ort = test_input($_POST["ort"]);
        if (!preg_match("/^[a-zA-Z ]*$/",$ort)) {
            $ort_err = "Ortschaft angeben!";
        }
    }

    if (empty($_POST["email"])) {
        $email_err = "Email angeben!";
    } else {
        $email = test_input($_POST["email"]);
        // check if e-mail address is well-formed
        if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
            $emailErr = "Ungültige Email Format";
        }
    }

    if (empty($_POST["phone"])) {
        $phone_err = "Telefon angeben!";
    } else {
        $phone = test_input($_POST["phone"]);
    }

    if (empty($_POST["descr"])) {
        $descr_err = "Beschreiben Sie bitte Ihr Anliegen!";
    } else {
        $descr = test_input($_POST["descr"]);
    }

}

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

if(isset($_POST['submit'])) {

    $to = "web@banovi-partner.ch";
    $from = $_POST['email'];

    if(isset($_POST['vorabaustausch'])) {
        $subject = $_POST['vorabaustausch'] . " " . $vorname. " " . $name;
    } elseif(isset($_POST['waranty'])) {
        $subject = $_POST['waranty'] . " " . $vorname . " " . $name;
    }

    $subject2 = "Bestätigung Auftrag" . "\r\n";

    $headers = "From: " . $email . "\r\n";
    $headers .= "MIME-Version: 1.0 \r\n";
    $headers .= 'Content-type: text/html; charset=UTF-8';

    $message = '<html>
                    <style>
                        body {
                            font-family: "Roboto", sans-serif;
                        }
                    </style>
                <body>';
    $message .= '<h1>' . $vorabaustausch . $waranty . ' von ' . $defektesGereat .'</h1>';
    $message .= '<hr><br>';
    $message .= '<h4><strong>Von: </strong> ' . $name . ' ' . $vorname . '</h4>';
    $message .= '<strong>Defektes Gerät: </strong>' . $defektesGereat . '<br>';
    $message .= '<strong>Artikelnummer:</strong> ' . $artikelnr . '<br>';
    $message .= '<strong>Seriennummer:</strong> ' . $serial . '<br>';
    $message .= '<strong>Kundenummer / Verkäufer:</strong> ' . $kdnr . '<br>';
    $message .= '<strong>Firma:</strong> ' . $firma . '<br><br>';
    $message .= '<strong>Adresse:</strong> <br>';
    $message .= $name . ' ' . $vorname . '<br>' . $strasse . '<br>' . $zip . ' ' . $ort . '<br><br>';
    $message .= '<strong>Email:</strong> ' . $email . '<br><br>';
    $message .= '<strong>Telefon:</strong> ' . $phone . '<br><br>';
    $message .= '<strong>Fehlerbeschreibung:</strong><br>';
    $message .= $descr . '<hr>';
    $message .= '</body></html>';

    $confirmation_mail = "Ihre Auftrags Kopie: " . "<br><br>" . $vorabaustausch . $waranty . $defektesGereat . $serial . $artikelnr . $kdnr . $firma . $name . $vorname . $strasse . $zip . $ort . $phone . $message;

    mail($to,$subject,$message,$headers);

    if(isset($_POST['confirmation'])) {

    }
}
?>

请帮帮我:)。

谢谢你,

1 个答案:

答案 0 :(得分:0)

检查您的初始表单标记。尝试将'PHP_SELF'改为“PHP_SELF”。