1

ユーザーが情報を入力し、ドロップダウン メニューからいくつかの選択肢を選択し、添付ファイルを含めるための Web フォームを作成する必要があります。このフォームを送信すると、メールが生成されて私に送信されます。

すべてのフィールドが機能します (つまり、受信した電子メールに表示されます)添付ファイル (添付ファイルを機能させる方法がわかりません)。私は HTML コースの紹介しか受けておらず、PHP を学んだことはありません。すべてのコードを完全に書き直さない限り、Google で調べても欲しい答えが得られないようです。私はそれが迅速な修正であることを願っています。

ここに私のHTMLコードがあります:

<!DOCTYPE html>
 <html lang="en">
 <head>
    <meta charset="utf-8" />
    <title></title>
 </head>

<body>
    <div id="container">
        <header>
        </header>
    <div id="maincontent">
        <script>
            $(document).ready(function() {
                $(':text:first').focus();
            });
        </script>

        <div id="form_container">

        <form action="sendemail.php" method="post" enctype="multipart/form-data">
        <ul id="emailform">
            <li>
                <label for="ef_title">Title: </label>
                <span class="fieldbox"><input type="text" name="ef_title" required="required"></span>
            </li>
            <li>
                <label for="ef_users">Users Impacted: </label>
                <span class="fieldbox"><input type="text" name="ef_users" required="required"></span>
            </li>
            <li>
                <label for="ef_datetime">Date/Time: </label>
                <span class="fieldbox"><input type="datetime" name="ef_datetime" required="required"></span>
            </li>
            <li>
                <label for="ef_priority">Priority: </label>
                <p>

                    <select name="selectpri" required="required">
                      <option value="">Select...</option>
                      <option value="1">1</option>
                      <option value="2">2</option>
                      <option value="3">3</option>
                    </select>
                </p>
                <!-- <span class="fieldbox"><input type="datetime" name="ef_datetime" required="required"></span> -->
            </li>
            <li>
                <label for="ef_blocking">Blocking: </label>
                <p>

                    <select name="selectblock" required="required">
                      <option value="">Select...</option>
                      <option value="yes">Yes</option>
                      <option value="no">No</option>

                    </select>
                </p>
            </li>

            <li>
                <label for="ef_url">URL of Observed Behavior: </label>
                <span class="fieldbox"><input type="url" name="ef_url" required="required"></span>
            </li>

            <li>
                <label for="ef_desc">Description of Behavior: </label>
                <span class="msgbox"><textarea class="area" name="ef_desc" required="required"></textarea></span>
            </li>

            <li>
                <label for="ef_results">Expected Results: </label>
                <span class="msgbox"><textarea class="area" name="ef_results" required="required"></textarea></span>
            </li>

            <li>
                <label for="ef_repro">Repro Steps: </label>
                <span class="msgbox"><textarea class="area" name="ef_repro" required="required"></textarea></span>
            </li>
            <li>
                <label for='uploaded_file'>Select A File To Upload:</label>
                <input type="file" name="file" id="file">

            </li>


        </ul>
    <input id="sendbutton" type="submit" value="Send">
    <input id="clearbutton" type="reset" value="Clear">
    <br /><br />
</form>
    </div>




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

そして、ここに私のPHPコードがあります:

<?php


$field_title = $_POST['ef_title'];
$field_users = $_POST['ef_users'];
$field_datetime = $_POST['ef_datetime'];
$field_priority = $_POST['selectpri'];
$field_blocking = $_POST['selectblock'];
$field_url = $_POST['ef_url'];
$field_desc= $_POST['ef_desc'];
$field_results = $_POST['ef_results'];
$field_repro = $_POST['ef_repro'];
$field_attach = $_POST['file'];




$mail_to = 'katcole@uw.edu';
$subject = $field_title;

$body_message .= 'Title: '.$field_title."\n";
$body_message .= 'Users: '.$field_users."\n";
$body_message .= 'Date/Time: '.$field_datetime."\n";
$body_message .= 'Priority: '.$field_priority."\n";
$body_message .= 'Blocking: '.$field_blocking."\n";
$body_message .= 'URL of Observed Behavior: '.$field_url."\n";
$body_message .= 'Description of Behavior: '.$field_desc."\n";
$body_message .= 'Expected Results: '.$field_results."\n";
$body_message .= 'Repro Steps: '.$field_repro."\n";
$body_message .= 'Attachments: '.$field_attach."\n";




$mail_status = mail($mail_to, $subject, $body_message, $headers);

if ($mail_status) { ?>
    <script language="javascript" type="text/javascript">
        alert('Thank you for the message. We will contact you shortly.');
        window.location = 'index.html';
    </script>
<?php
}
else { ?>
    <script language="javascript" type="text/javascript">
        alert('Message failed. Please, send an email to v-jacoca@microsoft.com');
        window.location = 'index.html';
    </script>
<?php
}
?>

この件についてご協力いただきありがとうございます。:)

4

3 に答える 3

0

これを変える:

$field_priority = $_POST['ef_priority'];
$field_blocking = $_POST['ef_blocking'];

これに:

$field_priority = $_POST['selectpri'];
$field_blocking = $_POST['selectblock'];
于 2013-07-19T21:58:02.553 に答える
0

あなたが定義したあなたのコードで:

$field_priority = $_POST['ef_priority'];
$field_blocking = $_POST['ef_blocking'];

フォーム要素名がなく、フォーム要素名ef_priorityef_blocking変更するか、名前に一致するようにコードを変更してください

于 2013-07-19T21:59:13.013 に答える
0

これらを変更します。

<select name="selectpri" required="required">
<select name="selectblock" required="required">

これらに:

<select name="ef_priority" required="required">
<select name="ef_blocking" required="required">

また、HTML フォームからファイルを取得する必要があります。以下のリンクを参照してください。

http://phpmaster.com/file-uploads-with-php/

于 2013-07-19T21:59:47.807 に答える