Log in

View Full Version : PHP Mail Forms not sending Hidden Div Information When visible



bkbroiler
03-25-2009, 04:40 AM
PROBLEM ONE
My Code is below. My problem is i have created a form with many hidden divs that are revealed when a user either clicks on radio buttons or check boxes. When the form is submitted however any of the input fields under these hidden divs do not get mailed to me. I am really new to PHP and i do not get how to do this.

Problem TWO
My second problem is that i get an error when processing the form. This mail script is exepcting that every input field to be filled out. I would like to change this so that only the input fields that the user selects from my radio and checkboxes are required.

I am not sure where to start to fix this. Here is both my mail.php and my html code.

Thanks.

bkbroiler
03-25-2009, 04:41 AM
PHP SCRIPT

<?php
//--------------------------Set these paramaters--------------------------

// Subject of email sent to you.
$subject = 'Forever Films Contact Form';

// Your email address. This is where the form information will be sent.
$emailadd = 'rileykurtz4@gmail.com';
$emailadd = 'bradykurtz@gmail.com';

// Where to redirect after form is processed.
$url = 'Completedform.html';

// Makes all fields required. If set to '1' no field can not be empty. If set to '0' any or all fields can be empty.
$req = '0';

// --------------------------Do not edit below this line--------------------------
$text = "Results from form:\n\n";
$space = ' ';
$line = '
';
foreach ($_POST as $key => $value)
{
if ($req == '1')
{
if ($value == '')
{echo "$key is empty";die;}
}
$j = strlen($key);
if ($j >= 20)
{echo "Name of form element $key cannot be longer than 20 characters";die;}
$j = 20 - $j;
for ($i = 1; $i <= $j; $i++)
{$space .= ' ';}
$value = str_replace('\n', "$line", $value);
$conc = "{$key}:$space{$value}$line";
$text .= $conc;
$space = ' ';
}
mail($emailadd, $subject, $text, 'From: '.$emailadd.'');
echo '<META HTTP-EQUIV=Refresh CONTENT="0; URL='.$url.'">';
?>

bkbroiler
03-25-2009, 04:42 AM
HTML CODE:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Forever Films</title>

<script type="text/javascript">

document.signup.firstname.onfocus();

</script>
<script type="text/javascript">



function stb(){document.signup.firstname.focus();}


</script>

<script type="text/javascript">
function movtoprevious(event){
var holderId = 'step'+(event.target.id - 1) + "Holder";
var oldHolderId = 'step'+event.target.id + "Holder";

if(event.target.id - 1 > 0){

document.getElementById(oldHolderId).style.display = "none";
}

document.getElementById(holderId).style.display = "inline";
}

</script>

<script type="text/javascript">
function movtoStep(event){
var holderId = 'step'+event.target.id + "Holder";
var oldHolderId = 'step'+(event.target.id - 1) + "Holder";

if(event.target.id - 1 > 0){

document.getElementById(oldHolderId).style.display = "none";
}

document.getElementById(holderId).style.display = "inline";
}

</script>

<script type="text/javascript">

function radioForms(element){
var radList = document.getElementsByName('desiredpackage');

for(var i = 0; i < radList.length; i ++){

var radio = radList[i];
var formId = radio.id + "form";
var curRadioForm = document.getElementById(formId);
if(element == radio){
curRadioForm.style.display = 'inline';
}
else{
curRadioForm.style.display = "none";
}
}
}
</script>

<script type="text/javascript">

function checkForms(element){
var checklist = document.getElementsByName('desiredpackage');
for (var i =0; i < checklist.length; i++){
var check = checklist[i];
var formId = element.id + "form";
var curCheckForm = document.getElementById(formId);
if(element.checked){
curCheckForm.style.display = 'inline';
}
else{
curCheckForm.style.display = "none";

}
}
}
</script>


<link href="style2.css" rel="stylesheet" type="text/css" />
</head>

<body>

<div id="central">
<div id="header"> </div>
<ul id="navlist">
<li><a id="n1" href="http://www.foreverfilmz.com">Home</a></li>
<li><a id="n2" href="http://www.foreverfilmz.com/packages.html">Packages</a></li>
<li><a id="n3" href="http://www.foreverfilmz.com/specials.html">Specials</a></li>
<li><a id="n4" href="http://www.foreverfilmz.com/Schedule.html">Book Us</a></li>
<li><a id="n5" href="http://www.foreverfilmz.com/contactus.html">Contact Us</a></li>
<li><a id="n6" href="http://www.foreverfilmz.com/aboutus.html">About Us</a></li>
<li><a id="n7" href="http://www.foreverfilmz.com/policies.html">Policies</a></li>
</ul>
<div id="content">
<div id="leftside">
<div id="quicklinks">

<div id="quicklinksli">
<br />
<br />


<a href="recentvideos.html">Recent Videos</a><br />

<a href="buildyourdvd.html">Build Your DVD</a><br />

<a href="slideshow.html">Slide Show</a><br />

<a href="calender.html">Forever Filmz Calender</a><br />

<a href="FAQS.html">FAQS</a><br />

<a href="sitemap.html">Sitemap</a><br />

</div>
</div>
<div id="leftsidebottom">
</div>


</div>
<div id="rightside">
<p>To check for and to schedule your wedding with us please fill out the form below.</p>

<form action="MailTest.php" method="post" name="signup">

<p><b>Bold</b> fields are required. <u>U</u>nderlined letters are accesskeys.</p>

<div id="step1Holder">

<fieldset>

<legend>Step 1</legend>

<fieldset>

<legend>Personal Information</legend>

<label for="firstname" class="required" accesskey="f">First name: </label>

<input type="text" id="firstname" name="firstname" tabindex="1" value="" title="first name"><br>

<label for="lastname" class="required" accesskey="l">Last name: </label>

<input type="text" id="lastname" name="lastname" tabindex="2" title="last name"><br>

<label for="email" class="required" accesskey="e">Email: </label>

<input type="text" id="email" name="email" tabindex="3" title="email"><br>
</fieldset>


<fieldset>

<legend>Marriage Information</legend>

<label for="marriage date" class="required" accesskey="M">Marriage Date:</label>

<input type="text" id="marriagedate" name="Marriage Date" tabindex="4" title="Marriage Date" /><br />

<label for="marriage time" class="required" accesskey="t">Marriage Time:</label>

<input type="text" id="marriagetime" name="Marriage Time" tabindex="5" title="Marriage Time" /><br />


<label for="city" class="required" accesskey="c">City of Marriage:</label>

<input type="text" id="cityofmarriage" name="City of Marriage" tabindex="6" title="City" /><br />

<label for="state" class="required" accesskey="S">State:</label>

<select name="state" size="1" tabindex="7">

<option value="Choose"></option>

<option value="AK">AK</option>

<option value="AL">AL</option>

<option value="AR">AR</option>

<option value="AZ">AZ</option>

<option value="CA">CA</option>

<option value="CO">CO</option>

<option value="CT">CT</option>

<option value="DC">DC</option>

<option value="DE">DE</option>

<option value="FL">FL</option>

<option value="GA">GA</option>

<option value="HI">HI</option>

<option value="IA">IA</option>

<option value="ID">ID</option>

<option value="IL">IL</option>

<option value="IN">IN</option>

<option value="KS">KS</option>

<option value="KY">KY</option>

<option value="LA">LA</option>

<option value="MA">MA</option>

<option value="MD">MD</option>

<option value="ME">ME</option>

<option value="MI">MI</option>

<option value="MN">MN</option>

<option value="MO">MO</option>

<option value="MS">MS</option>

<option value="MT">MT</option>

<option value="NC">NC</option>

<option value="ND">ND</option>

<option value="NE">NE</option>

<option value="NH">NH</option>

<option value="NJ">NJ</option>

<option value="NM">NM</option>

<option value="NV">NV</option>

<option value="NY">NY</option>

<option value="OH">OH</option>

<option value="OK">OK</option>

<option value="OR">OR</option>

<option value="PA">PA</option>

<option value="RI">RI</option>

<option value="SC">SC</option>

<option value="SD">SD</option>

<option value="TN">TN</option>

<option value="TX">TX</option>

<option value="UT">UT</option>

<option value="VA">VA</option>

<option value="VT">VT</option>

<option value="WA">WA</option>

<option value="WI">WI</option>

<option value="WV">WV</option>

<option value="WY">WY</option>
</select><br />

<label for="city" class="required" accesskey="c">Wedding Colors:</label>

<input type="text" id="weddingcolors" name="weddingcolors" tabindex="8" title="weddingcolors" /><br />

<label></label>

<input type="text" id="weddingcolors2" name="weddingcolors2" tabindex="9" title="weddingcolors2" /><br />

<label></label>

<input type="text" id="weddingcolors3" name="weddingcolors3" tabindex="10" title="weddingcolors3" />
</fieldset>

<input id='2'type="button" name="form_type" value="Next" tabindex="11" class="submit" onclick="movtoStep(event)" />
</fieldset>
</div>

bkbroiler
03-25-2009, 04:42 AM
<div id="step2Holder" style="display:none;" >

<fieldset>

<legend>Step 2</legend>

<fieldset>

<legend>Select Package</legend>

<label for="Package" accesskey="D" >Desired Package:</label>

<input type="radio" accesskey="D" tabindex="12" value="radio" name="desiredpackage" id="weddingvideo" onchange="radioForms(this)"/>Wedding Video<br />

<div id="weddingvideoform" style="display:none">
<fieldset>

<legend>Wedding Video Music</legend>

<label for"Wedding Video" >Choose Three Songs for Wedding Video:</label>

<input type="text" tabindex="13" name="Song One" value="Song One" />

<input type="text" tabindex="14" name="Song Two" value="Song Two" />

<label></label><input type="text" tabindex="15" name="Song Three" value="Song Three" /><br /><br />

<label for"DVD Amount">DVD Copies:</label>

<input type="text" size="2" name="Number of DVDs" />

<small>

This package already includes 2 DVDs

</small>
</fieldset>
</div>



<label for="Package" accesskey="D"></label>

<input type="radio" accesskey="D" tabindex="16" value="radio" name="desiredpackage" id="simplepackage" onchange="radioForms(this)"/>Simple Package<br />
<div id="simplepackageform" style="display:none">
<fieldset>

<legend>Wedding Video Options</legend>

<label for"Wedding Video">Choose Three Songs for Wedding Video:</label>

<input type="text" tabindex="17" name="Song One" />

<input type="text" tabindex="18" name="Song Two" />

<label></label><input type="text" tabindex="19" name="Song Three" /><br /><br />

<label for"Slide Show Video">Choose Three Songs for Slide Show:</label>

<label></label><input type="text" tabindex="19" name="Song One" />

<label></label><input type="text" tabindex="19" name="Song Two" /><br />

<label></label><input type="text" tabindex="19" name="Song Three" /><br /><br />

<label for"DVD Amount" >DVD Copies:</label>

<input type="text" size="2" name="Number of DVDs" />

<small>

This package already includes 2 DVDs

</small>

</fieldset>
</div>

<label for="Package" accesskey="D"></label>

<input type="radio" accesskey="D" tabindex="20" value="radio" name="desiredpackage" id="elegant" onchange="radioForms(this)"/>Elegant Package<br />
<div id="elegantform" style="display:none">
<fieldset>

<legend>Wedding Video Options</legend>

<label for"Wedding Video" >Choose Three Songs for Wedding Video:</label>

<input type="text" tabindex="21" name="Song One" />

<input type="text" tabindex="22" name="Song Two" />

<label></label><input type="text" tabindex="23" name="Song Three" /><br /><br />

<label for"Slide Show Video">Choose Three Songs for Slide Show:</label>

<label></label><input type="text" tabindex="19" name="Song One" />

<label></label><input type="text" tabindex="19" name="Song Two" /><br />

<label></label><input type="text" tabindex="19" name="Song Three" /><br /><br />

<label for"Reception">Choose Two Songs for Reception:</label>

<label></label><input type="text" tabindex="19" name="Song One" />

<label></label><input type="text" tabindex="19" name="Song Two" /><br /><br />


<label for"DVD Amount">DVD Copies:</label>

<input type="text" size="2" name="Number of DVDs" />

<small>

This package already includes 2 DVDs

</small>


</fieldset>
</div>


<label for="Package" accesskey="D"></label>

<input type="radio" accesskey="D" tabindex="24" value="radio" name="desiredpackage" id="works" onchange="radioForms(this)"/>The Works<br />
<div id="worksform" style="display:none">
<fieldset>

<legend>Wedding Video Options</legend>

<label for"Wedding Video" >Choose Three Songs for Wedding Video:</label>

<input type="text" tabindex="21" name="Song One" />

<input type="text" tabindex="22" name="Song Two" />

<label></label><input type="text" tabindex="23" name="Song Three" /><br /><br />

<label for"Slide Show Video" >Choose Three Songs for Slide Show:</label>

<label></label><input type="text" tabindex="19" name="Song One" />

<label></label><input type="text" tabindex="19" name="Song Two" /><br />

<label></label><input type="text" tabindex="19" name="Song Three" /><br /><br />

<label for"Reception" >Choose Two Songs for Reception:</label>

<label></label><input type="text" tabindex="19" name="Song One" />

<label></label><input type="text" tabindex="19" name="Song Two" /><br /><br />

<label for"Luncheon Video" >Luncheon Video:</label>

<label></label><input type="text" tabindex="19" name="Song One" />

<label></label><input type="text" tabindex="19" name="Song Two" /><br /><br />

<label for"DVD Amount">How Many DVD Copies:</label>

<input type="text" size="2" name="Number of DVDs" />

<small>

This package already includes 2 DVDs

</small>
</fieldset>
</div>

<label for="Package" accesskey="D"></label>

<input type="radio" accesskey="D" tabindex="25" value="radio" name="desiredpackage" id="create" onchange="radioForms(this)" />Create Your Own Package<br />
<div id="createform" style="display:none">
<fieldset>

<legend>Wedding Video Options</legend>

<input type="checkbox" value="check" name="Wedding Video" id="weddingvideocheck" onchange="checkForms(this)" />Wedding Video<br />

<div id="weddingvideocheckform" style="display:none">
<fieldset>
<legend>Select Your Music</legend>
<label for"Wedding Video">Choose Three Songs for Wedding Video:</label>

<input type="text" tabindex="21" name="Song One" />

<input type="text" tabindex="22" name="Song Two" />

<label></label><input type="text" tabindex="23" name="Song Three" /><br /><br />

</fieldset>
</div>

<input type="checkbox" value="check" name="Slide Show" id="slideshowcheck" onchange="checkForms(this)" />Slide Show<br />

<div id="slideshowcheckform" style="display:none">

<fieldset>

<legend>Select Your Music</legend>

<label for"Slide Show">Choose Three Songs for Slide Show:</label>

<input type="text" tabindex="21" name="Song One" />

<input type="text" tabindex="22" name="Song Two" />

<label></label><input type="text" tabindex="23" name="Song Three" /><br /><br />

</fieldset>
</div>

<input type="checkbox" value="check" name="Reception Video" id="receptioncheck" onchange="checkForms(this)" />Reception Video<br />

<div id="receptioncheckform" style="display:none">

<fieldset>

<legend>Select Your Music</legend>

<label for"Reception">Choose Two Songs for Reception:</label>

<label></label><input type="text" tabindex="19" name="Song One" />

<label></label><input type="text" tabindex="19" name="Song Two" /><br /><br />

</fieldset>

</div>

<input type="checkbox" value="check" name="Luncheon Video" id="luncheoncheck" onchange="checkForms(this)" />Luncheon Video<br />

<div id="luncheoncheckform" style="display:none">

<fieldset>

<legend>Select Your Music</legend>

<label for"Luncheon">Choose Two Songs for Luncheon:</label>

<label></label><input type="text" tabindex="19" name="Song One" />

<label></label><input type="text" tabindex="19" name="Song Two" /><br /><br />
<small>
<a href="upload.html">If you would like to upload your music instead click here</a>
</small>

</fieldset>

</div>

<label for"DVD Amount">DVD Copies:</label>

<input type="text" size="2" name="Number of DVDs" />

<small>

This package already includes 2 DVDs

</small>
</fieldset>
</div>

<small>

<a href="packages.html">For a List of Package Detials Click Here</a>
</small>
</fieldset>
<input id='2'type="button" name="form_type" tabindex="26" value="Previous" class="submit" onclick="movtoprevious(event)" />
<input id='3'type="button" name="form_type" tabindex="27" value="Next" class="submit" onclick="movtoStep(event)" />

</fieldset>
</div>
<div id="step3Holder" style="display:none;" >

<fieldset>

<legend>Step 3</legend>
<fieldset>
<legend>Extras</legend>
Please Provide Any Specific Requests or Questions:
<textarea tabindex="28" name="Extras" id="Extras" cols="45" rows="5" accesskey="Q"></textarea><br /><br />
<input id='3'type="button" name="form_type" tabindex="26" value="Previous" class="submit" onclick="movtoprevious(event)" /><br /><br />
<input type="submit" name="Submit" id="Submit" value="Submit" class="submit" accesskey="s" tabindex="5" align="right" />

</fieldset>

</fieldset>
</form>


</div>
<div id="footer"><img src="Images/footer.png" /></div>
</div>
<div id="imagepreloader"><img src="images/buttonover.gif" alt="mouseover" /></div>
</div>
</body>

</html>