簡體   English   中英

嘗試將表單中的復選框值發送到PHP中的電子郵件

[英]Trying to send checkbox value(s) from form to email in PHP

我從事Web開發已經有好幾年了,但過去涉足PHP,所以我想您可以說我是PHP的新手。 我正在嘗試使用PHP為作業應用程序構建一個簡單的表單,我希望表單被填寫,然后在提交時通過電子郵件發送。

我已經對該網站以及其他網站進行了研究,因此無法正常工作。 我無法獲得要顯示在電子郵件中的工作價值:

這是我的HTML代碼:

            <label>Position: check all you are interested in </label><br>
            <input type="checkbox" name="job[]" value="General Pickle Production">General Pickle Production
            <input type="checkbox" name="job[]" value="Fryer">Fryer
            <input type="checkbox" name="job[]" value="Sales">Sales
            <input type="checkbox" name="job[]" value="Manager">Manager
            <input type="checkbox" name="job[]" value="Overnights">Overnights<br>

這是我的PHP代碼:

    $aJob = $_POST['job'];
     if(empty($aJob)) 
   {
     echo("You didn't select any job position.");
   } 
   else 
   {
     $N = count($aJob);

     echo("You selected $N job(s): ");
     for($i=0; $i < $N; $i++)
     {
       echo($aJob[$i] . " ");
     }
   }

當我在表單上單擊“提交”時,上面將顯示在表單頁面上選擇的每個作業,但是我想我不確定如何在提交時將其發送到我的電子郵件中。 下面是我將變量發送到我的電子郵件的代碼:

    $content = $_POST['name'] . " " . $_POST['lastname'] . " \n";
    $content .= $_POST['address'] . " \n";
    $content .= "Position(s) applied for: " . $_POST['aJob'] . " \n";

我是否需要將for循環放在$ content部分中的某個位置以顯示作業? 我想我不確定這里的格式是什么樣?

感謝您提供的任何幫助。 謝謝。 Ĵ

$content .= "Position(s) applied for: ";
$content .= implode(',' $_POST['aJob']);

在您的示例中,您將name="job[]"用於輸入元素。 為了從$_POST數組中獲取值,我認為您應該使用$_POST['job']而不是$_POST['aJob']

如果要用逗號分隔它們,則可以使用implode例如這樣:

if (isset($_POST['job'])) {
    $content .= "Position(s) applied for: " . implode(",", $_POST['job']) . " \n";
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM