0

メールを送信しますが、本文、件名などはありません。これは私が得るものです:

ここに画像の説明を入力してください

HTML:

<div class="contact-form">
            <form action="mail.php" method="post">
                <label for="name">Name:<input type="text" id="name" class="text" /></label>
                <label for="email">Email:<input type="text" id="email" class="text" /></label>
                <label for="message">Message:<textarea id="message"></textarea></label>
                <input type="submit" class="submit" value="Send Message" />
            </form>
        </div>

PHP(mail.php):

<?php

    $name = $_POST['name'];
    $email = $_POST['email'];
    $message = $_POST['message'];

    $recipient = "me@christianselig.com";
    $subject = "Message From Website";
    $headers = "From: " . $email;

    mail($recipient, $subject, $message, $headers);
    echo "Thanks! The message was sent. :)";

?>

何か洞察はありますか?本当にありがとう。

4

4 に答える 4

7

フォーム フィールドは、ID ではなく名前に基づいています。

あなたを置き換えます:

id="(...)"

id="(...)" name="(...)"

現在の方法よりもはるかに安全なSwift Mailerを検討する必要があります。

于 2012-09-14T13:32:28.097 に答える
1

HTML 入力フィールドに name 属性が必要です。$_POSTこれは、配列内にインデックスを作成するためにフォームが使用するものです。修正後のHTMLは以下

<div class="contact-form">
        <form action="mail.php" method="post">
            <label for="name">Name:<input type="text" id="name" name="name" class="text" /></label>
            <label for="email">Email:<input type="text" id="email" name="email" class="text" /></label>
            <label for="message">Message:<textarea id="message" name="message"></textarea></label>
            <input type="submit" class="submit" value="Send Message" />
        </form>
    </div>
于 2012-09-14T13:34:04.933 に答える
0

サーバーの動作に $_POST が設定されていることを確認しますか? メール assicure を送信できない場合は、メールを送信するように SMTP を設定してみてください。phpmailer などを使用してメールを送信してみてください。

すべてのフィールドのフォームに次を入力する必要があります: - id="example_id" - name="example_name"

于 2012-09-14T13:33:19.247 に答える
0

各 html 要素に name 属性を指定する必要があります。以下の HTML コードを使用します。

<div class="contact-form">
            <form action="mail.php" method="post">
                <label for="name">Name:<input type="text" id="name" name="name" class="text" /></label>
                <label for="email">Email:<input type="text" id="email" name="email" class="text" /></label>
                <label for="message">Message:<textarea id="message" name="message"></textarea></label>
                <input type="submit" class="submit" value="Send Message" />
            </form>
        </div>
于 2012-09-14T13:33:53.100 に答える