簡體   English   中英

發送復選框值到電子郵件

[英]Send checkbox value to email

我有三個用於請求目錄的復選框。 我想在每封電子郵件中為他們三個人獲取價值。

這是我的HTML:

<input type="checkbox" name="catalog" value="Grower"/>  Grower Supply Catalog <br><br>
<input type="checkbox" name="catalog" value="Specialty"/>  Specialty Catalog<br><br>
<input type="checkbox" name="catalog" value="Plant"/>  Plant Source Catalog

這是我的PHP:

$name      = @$_POST["name"];
$email     = @$_POST["email"];
$street     = @$_POST["street"];
$city     = @$_POST["city"];
$state    = @$_POST["state"];
$zip    = @$_POST["zip"];
$email     = @$_POST["email"];
$phone    = @$_POST["phone"];
$message   = @$_POST["comment"];
$catalog   =@$_POST["catalog"];
foreach($_POST['catalog'] as $value) {
    $check_msg .= "Checked: $value\n";
}

$headers  = "From: $email" . PHP_EOL;
    $headers .= "Reply-To: $email" . PHP_EOL;
    $headers .= "MIME-Version: 1.0" . PHP_EOL;
    $headers .= "Content-type: text/plain; charset=utf-8" . PHP_EOL;
    $headers .= "Content-Transfer-Encoding: quoted-printable" . PHP_EOL;

    $mailBody  = "You have been contacted by $name" . PHP_EOL . PHP_EOL;
    $mailBody .= (!empty($company))?'Company: '. PHP_EOL.$company. PHP_EOL . PHP_EOL:'';
    $mailBody .= (!empty($quoteType))?'project Type: '. PHP_EOL.$quoteType. PHP_EOL . PHP_EOL:''; 
    $mailBody .= "Street :" . PHP_EOL;
    $mailBody .= $street . PHP_EOL . PHP_EOL;
    $mailBody .= "City :" . PHP_EOL;
    $mailBody .= $city . PHP_EOL . PHP_EOL;
    $mailBody .= "State :" . PHP_EOL;
    $mailBody .= $state . PHP_EOL . PHP_EOL;
    $mailBody .= "Zip :" . PHP_EOL;
    $mailBody .= $zip . PHP_EOL . PHP_EOL;
    $mailBody .= "Phone :" . PHP_EOL;
    $mailBody .= $phone . PHP_EOL . PHP_EOL;
    $mailBody .= $check_msg .= "Catalog : $catalog\n"; 
    $mailBody .= "Message :" . PHP_EOL;
    $mailBody .= $message . PHP_EOL . PHP_EOL;
    $mailBody .= "You can contact $name via email, $email.";
    $mailBody .= (isset($phone) && !empty($phone))?" Or via phone $phone." . PHP_EOL . PHP_EOL:'';




    if(mail($to, $subject, $mailBody, $headers)){
        echo '<div class="alert alert-success">Success! Your message has been sent.</div>';
    }
}

如何將復選框值發送到電子郵件?

對那些元素名稱使用數組語法,以將這些值作為數組發送:

<input type="checkbox" name="catalog[]" value="Grower"/>  Grower Supply Catalog <br><br>
<input type="checkbox" name="catalog[]" value="Specialty"/>  Specialty Catalog<br><br>
<input type="checkbox" name="catalog[]" value="Plant"/>  Plant Source Catalog

我認為您應該正確輸入foreach()方法,輸入camelCase像這樣forEach()

暫無
暫無

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

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