最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

php - how to send multiple value for checkbox and echo in email? - Stack Overflow

programmeradmin1浏览0评论

the page will stop when i try to "tick" multiple checkbox .

may be coding error I don't know

form.php

<tr>
    <td><input type="checkbox" name="color[]"  value="YK GI ZincCoat&trade;"> YK GI ZincCoat&trade;</td>
    <td><input type="checkbox" name="color[]"  value="YK ColourCoat&trade;"> YK ColourCoat&trade;</td>
  </tr>
  <tr>
    <td><input type="checkbox" name="color[]" value="YK WarnaCanggih&trade; ColourCoat "> YK WarnaCanggih&trade; ColourCoat </td>
    <td><input type="checkbox" name="color[]" value="YK Self Cleaning&trade; ColourCoat"> YK Self Cleaning&trade; ColourCoat </td>
  </tr>

process.php

<?php


    $first= $_GET["first"];
    $job= $_GET["job"];
    $nature= $_GET["nature"];
    $color[]= $_GET["color[]"];
    $name= $_GET["name"];
    $jobtitle= $_GET["jobtitle"];
    $Company= $_GET["Company"];
    $address1= $_GET["address1"];
    $Tel= $_GET["Tel"];
    $Fax= $_GET["Fax"];
    $Handphone= $_GET["Handphone"];
    $Email= $_GET["Email"];





    require_once('lib/class.phpmailer.php');

    $mail             = new PHPMailer(); // defaults to using php "mail()"


    $mail->AddReplyTo("[email protected]","rusly");

    $mail->SetFrom('[email protected]', 'rusly');

    $mail->AddReplyTo("[email protected]","rusly");

    $address = "[email protected]";
    $mail->AddAddress($address, "rusly");

    $mail->Subject    = "Starshine Group - Enquiry Form";

    $mail->AltBody    = "To view the message, please use an HTML patible email viewer!"; // optional, ment out and test

    $mail->Body = "Contact Us<br><br> 
    $first<br>
    job : $job<br>
    nature : $nature<br><br>
    Product Interest : $color[]<br>
    First Name : $name<br>
    Job Title : $jobtitle<br>
    Address : $address1<br> 
    Company : $Company<br> 
    Phone Number : $Tel<br> 
    Handphone : $Handphone<br>
    Email : $Email<br> 
    Fax : $Fax<br> 

    Thank You!<br>


    ";


    if(!$mail->Send()) {
      echo "Mailer Error: " . $mail->ErrorInfo;
    } else {
      echo "
    First Name : $name<br>
    Address : $address1<br> 
    Phone Number :  $Tel<br> 
    Email : $Email<br> 


    Thank You!<br><br>

      Message sent!<br>";
    }

    ?>

the page will stop when i try to "tick" multiple checkbox .

may be coding error I don't know

form.php

<tr>
    <td><input type="checkbox" name="color[]"  value="YK GI ZincCoat&trade;"> YK GI ZincCoat&trade;</td>
    <td><input type="checkbox" name="color[]"  value="YK ColourCoat&trade;"> YK ColourCoat&trade;</td>
  </tr>
  <tr>
    <td><input type="checkbox" name="color[]" value="YK WarnaCanggih&trade; ColourCoat "> YK WarnaCanggih&trade; ColourCoat </td>
    <td><input type="checkbox" name="color[]" value="YK Self Cleaning&trade; ColourCoat"> YK Self Cleaning&trade; ColourCoat </td>
  </tr>

process.php

<?php


    $first= $_GET["first"];
    $job= $_GET["job"];
    $nature= $_GET["nature"];
    $color[]= $_GET["color[]"];
    $name= $_GET["name"];
    $jobtitle= $_GET["jobtitle"];
    $Company= $_GET["Company"];
    $address1= $_GET["address1"];
    $Tel= $_GET["Tel"];
    $Fax= $_GET["Fax"];
    $Handphone= $_GET["Handphone"];
    $Email= $_GET["Email"];





    require_once('lib/class.phpmailer.php');

    $mail             = new PHPMailer(); // defaults to using php "mail()"


    $mail->AddReplyTo("[email protected]","rusly");

    $mail->SetFrom('[email protected]', 'rusly');

    $mail->AddReplyTo("[email protected]","rusly");

    $address = "[email protected]";
    $mail->AddAddress($address, "rusly");

    $mail->Subject    = "Starshine Group - Enquiry Form";

    $mail->AltBody    = "To view the message, please use an HTML patible email viewer!"; // optional, ment out and test

    $mail->Body = "Contact Us<br><br> 
    $first<br>
    job : $job<br>
    nature : $nature<br><br>
    Product Interest : $color[]<br>
    First Name : $name<br>
    Job Title : $jobtitle<br>
    Address : $address1<br> 
    Company : $Company<br> 
    Phone Number : $Tel<br> 
    Handphone : $Handphone<br>
    Email : $Email<br> 
    Fax : $Fax<br> 

    Thank You!<br>


    ";


    if(!$mail->Send()) {
      echo "Mailer Error: " . $mail->ErrorInfo;
    } else {
      echo "
    First Name : $name<br>
    Address : $address1<br> 
    Phone Number :  $Tel<br> 
    Email : $Email<br> 


    Thank You!<br><br>

      Message sent!<br>";
    }

    ?>
Share Improve this question edited Mar 25, 2011 at 11:33 Shakti Singh 86.5k21 gold badges139 silver badges155 bronze badges asked Mar 25, 2011 at 11:31 Muhammad RuslyMuhammad Rusly 834 silver badges16 bronze badges 0
Add a ment  | 

3 Answers 3

Reset to default 3

use $color= $_GET["color"]; instead of $color[]= $_GET["color[]"];

$color will be array of values.

and use

Product Interest : ".implode(',', $color)."<br>  // this will add in format of value1,value2,value3  you can change ma to any other char

instead of Product Interest : $color[]<br>

Try this

<?php

$first= $_GET["first"]; $job= $_GET["job"]; $nature= $_GET["nature"]; $color[]= $_GET["color"]; $name= $_GET["name"]; $jobtitle= $_GET["jobtitle"]; $Company= $_GET["Company"]; $address1= $_GET["address1"]; $Tel= $_GET["Tel"]; $Fax= $_GET["Fax"]; $Handphone= $_GET["Handphone"]; $Email= $_GET["Email"];

require_once('lib/class.phpmailer.php');

$mail = new PHPMailer(); // defaults to using php "mail()"

$mail->AddReplyTo("[email protected]","rusly");

$mail->SetFrom('[email protected]', 'rusly');

$mail->AddReplyTo("[email protected]","rusly");

$address = "[email protected]"; $mail->AddAddress($address, "rusly");

$mail->Subject = "Starshine Group - Enquiry Form";

$mail->AltBody = "To view the message, please use an HTML patible email viewer!"; // optional, ment out and test

$mail->Body = "Contact Us

$first
job : $job
nature : $nature

Product Interest : ";
foreach($color as $k=>$val){
    $mail->Body .= $val.', ';
}
 "First Name : $name
Job Title : $jobtitle
Address : $address1
Company : $Company
Phone Number : $Tel
Handphone : $Handphone
Email : $Email
Fax : $Fax
Thank You!

";

if(!$mail->Send()) { echo "Mailer Error: " . $mail->ErrorInfo; } else { echo " First Name : $name
Address : $address1
Phone Number : $Tel
Email : $Email
Thank You!


Message sent!
"; }

?>
    if($_REQUEST[color]){
        $color=$_REQUEST[color];
    }else{
        $color=array();     
    }
    $totalcolor=implode(",", $_REQUEST[color]);

first to set this on the your page and then requested $totalcolor value its contains all value of the color with , ok go a head.

发布评论

评论列表(0)

  1. 暂无评论