Jump to content

[SOLVED] PHPMailer and Checkboxes Help


serbestgezer

Recommended Posts

Hi guys,

 

I have a form and try to send checkbox values by email. here is moy code. It doesnt get checkbox values with $body. Please help.

 

<?php
include_once('class.phpmailer.php');

$mail    = new PHPMailer();
$prange = $_POST[prange];

if(is_array($prange)) {

foreach ($prange as $value) 
{ 
$body  = '<table width="480" height="286" border="0" align="center" cellpadding="3" cellspacing="1" class="channelContent">
  <tr bgcolor="#B0D3FA">
    <td colspan="4"><div align="center"><span class="style1">Website Enquiries</span></div></td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Range:</strong></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$value.'<br></td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td width="147" align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Name:</strong></div></td>
    <td width="312" colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$_POST[name].'</td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Address: </strong></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">' .$_POST[address].'</td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Mobile No:</strong></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$_POST[mobile].'</td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><span style="font-weight: bold">Email:</span></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$_POST[email].'</td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Other Comments:</strong></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$_POST[comments].'    </td>
  </tr>
</table>';
}

if ((isset($_POST["check"])) && ($_POST["check"] == "quote")) {

$mail->From     = "admin@localhost";
$mail->FromName = "Test"; 

$mail->Subject = "Website Inquiries";


$mail->MsgHTML($body);

$mail->AddAddress("test@test");
}

if(!$mail->Send()) {
  echo 'Failed to send mail';
} 
header("location:index.html");
}
?>

Link to comment
https://forums.phpfreaks.com/topic/165008-solved-phpmailer-and-checkboxes-help/
Share on other sites

Could you also post the form that sends data to this script?  One thing to note is that checkboxes are only accessible via $_POST[] if the checkbox was actually checked.  So first step is to check if the field exists in the $_POST, do an isset($_POST['checkbox_field');

 

<form id="form1" name="form1" method="post" action="">
  <table width="480" height="345" border="0" align="center" cellpadding="3" cellspacing="1">
    <tr>
      <td align="right" valign="middle"><div align="left"><strong>Prange:</strong></div></td>
      <td colspan="3" align="left" valign="middle">red
        <input name="prange[]" type="checkbox" id="prange[]" value="red" />
        blue
        <input name="prange[]" type="checkbox" id="prange[]" value="blue" />
        green
        <input name="prange[]" type="checkbox" id="prange[]" value="green" /></td>
    </tr>
    <tr>
      <td width="184" align="right" valign="middle"><div align="left"><strong>Name:</strong></div></td>
      <td colspan="3" align="left" valign="middle"><input name="name" type="text"  id="name" size="35" />
          <span class="red">*</span></td>
    </tr>
    <tr>
      <td align="right" valign="middle" ><div align="left"><strong>Address: </strong></div></td>
      <td colspan="3" align="left" valign="middle"><input name="address" type="text"  id="address" size="35" />
          <span class="red">*</span></td>
    </tr>
    <tr>
      <td align="right" valign="middle" ><div align="left"><strong>Mobile No:</strong></div></td>
      <td colspan="3" align="left" valign="middle"><input name="mobile" type="text"  id="mobile" size="35" />
          <span class="red">*</span></td>
    </tr>
    <tr>
      <td align="right" valign="middle"><div align="left"><span style="font-weight: bold">Email:</span></div></td>
      <td colspan="3" align="left" valign="middle"><input name="email" type="text" id="email" size="35" />
          <span class="red">*</span></td>
    </tr>
    <tr>
      <td height="100" align="right" valign="middle"><strong>Other Comments:</strong></td>
      <td colspan="3" align="left" valign="middle"><textarea name="comments" cols="35" rows="5" wrap="virtual" id="comments"></textarea></td>
    </tr>
    <tr>
      <td align="right" valign="middle"><input name="emailto" type="hidden" id="emailto" value="<?php echo $_GET['email']; ?>" />
          <input name="check" type="hidden" id="check" value="quote" /></td>
      <td colspan="3" align="left" valign="middle"><input name="gonder" type="submit"  value="get a quote" /></td>
    </tr>
  </table>
</form>

this part is a little redundant...

 

if ((isset($_POST["check"])) && ($_POST["check"] == "quote")) {

 

can just be if(isset($_POST['check']){ do stuff }

 

try that...

and do a

 

print_r($_POST);

 

exit();

 

at the top of the handler page.

 

 

Could you also post the form that sends data to this script?  One thing to note is that checkboxes are only accessible via $_POST[] if the checkbox was actually checked.  So first step is to check if the field exists in the $_POST, do an isset($_POST['checkbox_field');

 

thanks mate i'll do that.

Try this for the form (I removed the duplicate id's, all ids should be unique, and they aren't needed for array checkboxes):

 

<form id="form1" name="form1" method="post" action="">
  <table width="480" height="345" border="0" align="center" cellpadding="3" cellspacing="1">
    <tr>
      <td align="right" valign="middle"><div align="left"><strong>Prange:</strong></div></td>
      <td colspan="3" align="left" valign="middle">red
        <input name="prange[]" type="checkbox"  value="red" />
        blue
        <input name="prange[]" type="checkbox"  value="blue" />
        green
        <input name="prange[]" type="checkbox"  value="green" /></td>
    </tr>
    <tr>
      <td width="184" align="right" valign="middle"><div align="left"><strong>Name:</strong></div></td>
      <td colspan="3" align="left" valign="middle"><input name="name" type="text"  id="name" size="35" />
          <span class="red">*</span></td>
    </tr>
    <tr>
      <td align="right" valign="middle" ><div align="left"><strong>Address: </strong></div></td>
      <td colspan="3" align="left" valign="middle"><input name="address" type="text"  id="address" size="35" />
          <span class="red">*</span></td>
    </tr>
    <tr>
      <td align="right" valign="middle" ><div align="left"><strong>Mobile No:</strong></div></td>
      <td colspan="3" align="left" valign="middle"><input name="mobile" type="text"  id="mobile" size="35" />
          <span class="red">*</span></td>
    </tr>
    <tr>
      <td align="right" valign="middle"><div align="left"><span style="font-weight: bold">Email:</span></div></td>
      <td colspan="3" align="left" valign="middle"><input name="email" type="text" id="email" size="35" />
          <span class="red">*</span></td>
    </tr>
    <tr>
      <td height="100" align="right" valign="middle"><strong>Other Comments:</strong></td>
      <td colspan="3" align="left" valign="middle"><textarea name="comments" cols="35" rows="5" wrap="virtual" id="comments"></textarea></td>
    </tr>
    <tr>
      <td align="right" valign="middle"><input name="emailto" type="hidden" id="emailto" value="<?php echo $_GET['email']; ?>" />
          <input name="check" type="hidden" id="check" value="quote" /></td>
      <td colspan="3" align="left" valign="middle"><input name="gonder" type="submit"  value="get a quote" /></td>
    </tr>
  </table>
</form>

 

and this for the process script:

 

<?php
include_once('class.phpmailer.php');

$mail    = new PHPMailer();
if(!isset($_POST['prange'])){
die("No prange posted");
}
$prange = $_POST['prange'];
$body = "";



foreach ($prange as $value) { 
$body  .= <<<HTML
  <table width="480" height="286" border="0" align="center" cellpadding="3" cellspacing="1" class="channelContent">
  <tr bgcolor="#B0D3FA">
    <td colspan="4"><div align="center"><span class="style1">Website Enquiries</span></div></td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Range:</strong></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$value.'<br></td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td width="147" align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Name:</strong></div></td>
    <td width="312" colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$_POST[name].'</td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Address: </strong></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">' .$_POST[address].'</td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Mobile No:</strong></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$_POST[mobile].'</td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><span style="font-weight: bold">Email:</span></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$_POST[email].'</td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Other Comments:</strong></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$_POST[comments].'    </td>
  </tr>
</table>
HTML;
}

echo $body;

if ((isset($_POST["check"])) && ($_POST["check"] == "quote")) {

$mail->From     = "admin@localhost";
$mail->FromName = "Test"; 

$mail->Subject = "Website Inquiries";


$mail->MsgHTML($body);

$mail->AddAddress("test@test");
}

if(!$mail->Send()) {
  echo 'Failed to send mail';
} 
header("location:index.html");

?>

 

I'm not sure if the process script is quite right (w/o testing it), but the main idea is to make sure the prange has been submitted, if it has treat it as an array.  I noticed your body wasn't appending but overwriting, so the above script appends the body instead of constantly overwriting it.  It should get you down the right path.

 

Edit: I also added heredoc, and added quotes around the $_POST vars.

 

  <table width="480" height="286" border="0" align="center" cellpadding="3" cellspacing="1" class="channelContent">

  <tr bgcolor="#B0D3FA">

    <td colspan="4"><div align="center"><span class="style1">Website Enquiries</span></div></td>

  </tr>

  <tr bgcolor="#E3F1FF">

    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Range:</strong></div></td>

    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">Red<br></td>

  </tr>

  <tr bgcolor="#E3F1FF">

    <td width="147" align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Name:</strong></div></td>

    <td width="312" colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">Test</td>

  </tr>

  <tr bgcolor="#E3F1FF">

    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Address: </strong></div></td>

    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">Test</td>

  </tr>

  <tr bgcolor="#E3F1FF">

    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Mobile No:</strong></div></td>

    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">Test</td>

  </tr>

  <tr bgcolor="#E3F1FF">

    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><span style="font-weight: bold">Email:</span></div></td>

    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">Test</td>

  </tr>

  <tr bgcolor="#E3F1FF">

    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Other Comments:</strong></div></td>

    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">Test </td>

  </tr>

</table>

 

  <table width="480" height="286" border="0" align="center" cellpadding="3" cellspacing="1" class="channelContent">

  <tr bgcolor="#B0D3FA">

    <td colspan="4"><div align="center"><span class="style1">Website Enquiries</span></div></td>

  </tr>

  <tr bgcolor="#E3F1FF">

    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Range:</strong></div></td>

    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">Green<br></td>

  </tr>

  <tr bgcolor="#E3F1FF">

    <td width="147" align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Name:</strong></div></td>

    <td width="312" colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">Test</td>

  </tr>

  <tr bgcolor="#E3F1FF">

    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Address: </strong></div></td>

    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">Test</td>

  </tr>

  <tr bgcolor="#E3F1FF">

    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Mobile No:</strong></div></td>

    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">Test</td>

  </tr>

  <tr bgcolor="#E3F1FF">

    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><span style="font-weight: bold">Email:</span></div></td>

    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">Test</td>

  </tr>

  <tr bgcolor="#E3F1FF">

    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Other Comments:</strong></div></td>

    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">Test </td>

  </tr>

</table>

 

Is there anyway to stop that?

What do you want the final output to be?

 

like this:

 

<table width="480" height="286" border="0" align="center" cellpadding="3" cellspacing="1" class="channelContent">

  <tr bgcolor="#B0D3FA">

    <td colspan="4"><div align="center"><span class="style1">Website Enquiries</span></div></td>

  </tr>

  <tr bgcolor="#E3F1FF">

    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Range:</strong></div></td>

    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">Green<br>Red</td>

  </tr>

  <tr bgcolor="#E3F1FF">

    <td width="147" align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Name:</strong></div></td>

    <td width="312" colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">Test</td>

  </tr>

  <tr bgcolor="#E3F1FF">

    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Address: </strong></div></td>

    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">Test</td>

  </tr>

  <tr bgcolor="#E3F1FF">

    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Mobile No:</strong></div></td>

    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">Test</td>

  </tr>

  <tr bgcolor="#E3F1FF">

    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><span style="font-weight: bold">Email:</span></div></td>

    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">Test</td>

  </tr>

  <tr bgcolor="#E3F1FF">

    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Other Comments:</strong></div></td>

    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">Test </td>

  </tr>

</table>

 

Ahh so can they only select one prange?  If so then use radio buttons like the following:

 

<form id="form1" name="form1" method="post" action="">
  <table width="480" height="345" border="0" align="center" cellpadding="3" cellspacing="1">
    <tr>
      <td align="right" valign="middle"><div align="left"><strong>Prange:</strong></div></td>
      <td colspan="3" align="left" valign="middle">red
        <input name="prange" type="radio"  value="red" />
        blue
        <input name="prange" type="radio"  value="blue" />
        green
        <input name="prange" type="radio"  value="green" /></td>
    </tr>
    <tr>
      <td width="184" align="right" valign="middle"><div align="left"><strong>Name:</strong></div></td>
      <td colspan="3" align="left" valign="middle"><input name="name" type="text"  id="name" size="35" />
          <span class="red">*</span></td>
    </tr>
    <tr>
      <td align="right" valign="middle" ><div align="left"><strong>Address: </strong></div></td>
      <td colspan="3" align="left" valign="middle"><input name="address" type="text"  id="address" size="35" />
          <span class="red">*</span></td>
    </tr>
    <tr>
      <td align="right" valign="middle" ><div align="left"><strong>Mobile No:</strong></div></td>
      <td colspan="3" align="left" valign="middle"><input name="mobile" type="text"  id="mobile" size="35" />
          <span class="red">*</span></td>
    </tr>
    <tr>
      <td align="right" valign="middle"><div align="left"><span style="font-weight: bold">Email:</span></div></td>
      <td colspan="3" align="left" valign="middle"><input name="email" type="text" id="email" size="35" />
          <span class="red">*</span></td>
    </tr>
    <tr>
      <td height="100" align="right" valign="middle"><strong>Other Comments:</strong></td>
      <td colspan="3" align="left" valign="middle"><textarea name="comments" cols="35" rows="5" wrap="virtual" id="comments"></textarea></td>
    </tr>
    <tr>
      <td align="right" valign="middle"><input name="emailto" type="hidden" id="emailto" value="<?php echo $_GET['email']; ?>" />
          <input name="check" type="hidden" id="check" value="quote" /></td>
      <td colspan="3" align="left" valign="middle"><input name="gonder" type="submit"  value="get a quote" /></td>
    </tr>
  </table>
</form>

 

<?php
include_once('class.phpmailer.php');

$mail    = new PHPMailer();
if(!isset($_POST['prange'])){
   die("No prange posted");
}
$prange = $_POST['prange'];
$body = "";



$body  .= <<<HTML
  <table width="480" height="286" border="0" align="center" cellpadding="3" cellspacing="1" class="channelContent">
  <tr bgcolor="#B0D3FA">
    <td colspan="4"><div align="center"><span class="style1">Website Enquiries</span></div></td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Range:</strong></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$value.'<br></td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td width="147" align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Name:</strong></div></td>
    <td width="312" colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$_POST[name].'</td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Address: </strong></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">' .$_POST[address].'</td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Mobile No:</strong></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$_POST[mobile].'</td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><span style="font-weight: bold">Email:</span></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$_POST[email].'</td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Other Comments:</strong></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$_POST[comments].'    </td>
  </tr>
</table>
HTML;

echo $body;

if ((isset($_POST["check"])) && ($_POST["check"] == "quote")) {

$mail->From     = "admin@localhost";
$mail->FromName = "Test"; 

$mail->Subject = "Website Inquiries";


$mail->MsgHTML($body);

$mail->AddAddress("test@test");
}

if(!$mail->Send()) {
  echo 'Failed to send mail';
} 
header("location:index.html");

?>

Ahh so can they only select one prange?  If so then use radio buttons like the following:

 

<form id="form1" name="form1" method="post" action="">
  <table width="480" height="345" border="0" align="center" cellpadding="3" cellspacing="1">
    <tr>
      <td align="right" valign="middle"><div align="left"><strong>Prange:</strong></div></td>
      <td colspan="3" align="left" valign="middle">red
        <input name="prange" type="radio"  value="red" />
        blue
        <input name="prange" type="radio"  value="blue" />
        green
        <input name="prange" type="radio"  value="green" /></td>
    </tr>
    <tr>
      <td width="184" align="right" valign="middle"><div align="left"><strong>Name:</strong></div></td>
      <td colspan="3" align="left" valign="middle"><input name="name" type="text"  id="name" size="35" />
          <span class="red">*</span></td>
    </tr>
    <tr>
      <td align="right" valign="middle" ><div align="left"><strong>Address: </strong></div></td>
      <td colspan="3" align="left" valign="middle"><input name="address" type="text"  id="address" size="35" />
          <span class="red">*</span></td>
    </tr>
    <tr>
      <td align="right" valign="middle" ><div align="left"><strong>Mobile No:</strong></div></td>
      <td colspan="3" align="left" valign="middle"><input name="mobile" type="text"  id="mobile" size="35" />
          <span class="red">*</span></td>
    </tr>
    <tr>
      <td align="right" valign="middle"><div align="left"><span style="font-weight: bold">Email:</span></div></td>
      <td colspan="3" align="left" valign="middle"><input name="email" type="text" id="email" size="35" />
          <span class="red">*</span></td>
    </tr>
    <tr>
      <td height="100" align="right" valign="middle"><strong>Other Comments:</strong></td>
      <td colspan="3" align="left" valign="middle"><textarea name="comments" cols="35" rows="5" wrap="virtual" id="comments"></textarea></td>
    </tr>
    <tr>
      <td align="right" valign="middle"><input name="emailto" type="hidden" id="emailto" value="<?php echo $_GET['email']; ?>" />
          <input name="check" type="hidden" id="check" value="quote" /></td>
      <td colspan="3" align="left" valign="middle"><input name="gonder" type="submit"  value="get a quote" /></td>
    </tr>
  </table>
</form>

 

<?php
include_once('class.phpmailer.php');

$mail    = new PHPMailer();
if(!isset($_POST['prange'])){
   die("No prange posted");
}
$prange = $_POST['prange'];
$body = "";



$body  .= <<<HTML
  <table width="480" height="286" border="0" align="center" cellpadding="3" cellspacing="1" class="channelContent">
  <tr bgcolor="#B0D3FA">
    <td colspan="4"><div align="center"><span class="style1">Website Enquiries</span></div></td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Range:</strong></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$value.'<br></td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td width="147" align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Name:</strong></div></td>
    <td width="312" colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$_POST[name].'</td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Address: </strong></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">' .$_POST[address].'</td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Mobile No:</strong></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$_POST[mobile].'</td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><span style="font-weight: bold">Email:</span></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$_POST[email].'</td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Other Comments:</strong></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$_POST[comments].'    </td>
  </tr>
</table>
HTML;

echo $body;

if ((isset($_POST["check"])) && ($_POST["check"] == "quote")) {

$mail->From     = "admin@localhost";
$mail->FromName = "Test"; 

$mail->Subject = "Website Inquiries";


$mail->MsgHTML($body);

$mail->AddAddress("test@test");
}

if(!$mail->Send()) {
  echo 'Failed to send mail';
} 
header("location:index.html");

?>

 

I really appreciate your help. I want to use checkboxes cause I want them to use multiple selection. same time they should able to select 2 or even 3.

k - something like this should do the trick

 

<form id="form1" name="form1" method="post" action="">
  <table width="480" height="345" border="0" align="center" cellpadding="3" cellspacing="1">
    <tr>
      <td align="right" valign="middle"><div align="left"><strong>Prange:</strong></div></td>
      <td colspan="3" align="left" valign="middle">red
        <input name="prange[]" type="checkbox"  value="red" />
        blue
        <input name="prange[]" type="checkbox"  value="blue" />
        green
        <input name="prange[]" type="checkbox"  value="green" /></td>
    </tr>
    <tr>
      <td width="184" align="right" valign="middle"><div align="left"><strong>Name:</strong></div></td>
      <td colspan="3" align="left" valign="middle"><input name="name" type="text"  id="name" size="35" />
          <span class="red">*</span></td>
    </tr>
    <tr>
      <td align="right" valign="middle" ><div align="left"><strong>Address: </strong></div></td>
      <td colspan="3" align="left" valign="middle"><input name="address" type="text"  id="address" size="35" />
          <span class="red">*</span></td>
    </tr>
    <tr>
      <td align="right" valign="middle" ><div align="left"><strong>Mobile No:</strong></div></td>
      <td colspan="3" align="left" valign="middle"><input name="mobile" type="text"  id="mobile" size="35" />
          <span class="red">*</span></td>
    </tr>
    <tr>
      <td align="right" valign="middle"><div align="left"><span style="font-weight: bold">Email:</span></div></td>
      <td colspan="3" align="left" valign="middle"><input name="email" type="text" id="email" size="35" />
          <span class="red">*</span></td>
    </tr>
    <tr>
      <td height="100" align="right" valign="middle"><strong>Other Comments:</strong></td>
      <td colspan="3" align="left" valign="middle"><textarea name="comments" cols="35" rows="5" wrap="virtual" id="comments"></textarea></td>
    </tr>
    <tr>
      <td align="right" valign="middle"><input name="emailto" type="hidden" id="emailto" value="<?php echo $_GET['email']; ?>" />
          <input name="check" type="hidden" id="check" value="quote" /></td>
      <td colspan="3" align="left" valign="middle"><input name="gonder" type="submit"  value="get a quote" /></td>
    </tr>
  </table>
</form>

 

<?php
include_once('class.phpmailer.php');

$mail    = new PHPMailer();
if(!isset($_POST['prange'])){
   die("No prange posted");
}
$prange = $_POST['prange'];
$body = <<<HTML
<table width="480" height="286" border="0" align="center" cellpadding="3" cellspacing="1" class="channelContent">
  <tr bgcolor="#B0D3FA">
    <td colspan="4"><div align="center"><span class="style1">Website Enquiries</span></div></td>
  </tr>
HTML;



foreach ($prange as $value) { 
$body  .= <<<HTML
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Range:</strong></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$value.'<br></td>
  </tr>
  

HTML;
}

$body .= <<<HTML
<tr bgcolor="#E3F1FF">
    <td width="147" align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Name:</strong></div></td>
    <td width="312" colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$_POST[name].'</td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Address: </strong></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">' .$_POST[address].'</td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Mobile No:</strong></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$_POST[mobile].'</td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><span style="font-weight: bold">Email:</span></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$_POST[email].'</td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Other Comments:</strong></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$_POST[comments].'    </td>
  </tr>
</table>
HTML;

echo $body;

if ((isset($_POST["check"])) && ($_POST["check"] == "quote")) {

$mail->From     = "admin@localhost";
$mail->FromName = "Test"; 

$mail->Subject = "Website Inquiries";


$mail->MsgHTML($body);

$mail->AddAddress("test@test");
}

if(!$mail->Send()) {
  echo 'Failed to send mail';
} 
header("location:index.html");

?>

 

k - something like this should do the trick

 

<form id="form1" name="form1" method="post" action="">
  <table width="480" height="345" border="0" align="center" cellpadding="3" cellspacing="1">
    <tr>
      <td align="right" valign="middle"><div align="left"><strong>Prange:</strong></div></td>
      <td colspan="3" align="left" valign="middle">red
        <input name="prange[]" type="checkbox"  value="red" />
        blue
        <input name="prange[]" type="checkbox"  value="blue" />
        green
        <input name="prange[]" type="checkbox"  value="green" /></td>
    </tr>
    <tr>
      <td width="184" align="right" valign="middle"><div align="left"><strong>Name:</strong></div></td>
      <td colspan="3" align="left" valign="middle"><input name="name" type="text"  id="name" size="35" />
          <span class="red">*</span></td>
    </tr>
    <tr>
      <td align="right" valign="middle" ><div align="left"><strong>Address: </strong></div></td>
      <td colspan="3" align="left" valign="middle"><input name="address" type="text"  id="address" size="35" />
          <span class="red">*</span></td>
    </tr>
    <tr>
      <td align="right" valign="middle" ><div align="left"><strong>Mobile No:</strong></div></td>
      <td colspan="3" align="left" valign="middle"><input name="mobile" type="text"  id="mobile" size="35" />
          <span class="red">*</span></td>
    </tr>
    <tr>
      <td align="right" valign="middle"><div align="left"><span style="font-weight: bold">Email:</span></div></td>
      <td colspan="3" align="left" valign="middle"><input name="email" type="text" id="email" size="35" />
          <span class="red">*</span></td>
    </tr>
    <tr>
      <td height="100" align="right" valign="middle"><strong>Other Comments:</strong></td>
      <td colspan="3" align="left" valign="middle"><textarea name="comments" cols="35" rows="5" wrap="virtual" id="comments"></textarea></td>
    </tr>
    <tr>
      <td align="right" valign="middle"><input name="emailto" type="hidden" id="emailto" value="<?php echo $_GET['email']; ?>" />
          <input name="check" type="hidden" id="check" value="quote" /></td>
      <td colspan="3" align="left" valign="middle"><input name="gonder" type="submit"  value="get a quote" /></td>
    </tr>
  </table>
</form>

 

<?php
include_once('class.phpmailer.php');

$mail    = new PHPMailer();
if(!isset($_POST['prange'])){
   die("No prange posted");
}
$prange = $_POST['prange'];
$body = <<<HTML
<table width="480" height="286" border="0" align="center" cellpadding="3" cellspacing="1" class="channelContent">
  <tr bgcolor="#B0D3FA">
    <td colspan="4"><div align="center"><span class="style1">Website Enquiries</span></div></td>
  </tr>
HTML;



foreach ($prange as $value) { 
$body  .= <<<HTML
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Range:</strong></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$value.'<br></td>
  </tr>
  

HTML;
}

$body .= <<<HTML
<tr bgcolor="#E3F1FF">
    <td width="147" align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Name:</strong></div></td>
    <td width="312" colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$_POST[name].'</td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Address: </strong></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">' .$_POST[address].'</td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Mobile No:</strong></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$_POST[mobile].'</td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><span style="font-weight: bold">Email:</span></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$_POST[email].'</td>
  </tr>
  <tr bgcolor="#E3F1FF">
    <td align="right" valign="middle" bgcolor="#E3F1FF"><div align="left"><strong>Other Comments:</strong></div></td>
    <td colspan="3" align="left" valign="middle" bgcolor="#E3F1FF">'.$_POST[comments].'    </td>
  </tr>
</table>
HTML;

echo $body;

if ((isset($_POST["check"])) && ($_POST["check"] == "quote")) {

$mail->From     = "admin@localhost";
$mail->FromName = "Test"; 

$mail->Subject = "Website Inquiries";


$mail->MsgHTML($body);

$mail->AddAddress("test@test");
}

if(!$mail->Send()) {
  echo 'Failed to send mail';
} 
header("location:index.html");

?>

 

perfect!! thanks for your help.

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.