Hello and welcome to our community! Is this your first visit?
Enjoy an ad free experience by logging in. Not a member yet? Register.
Results 1 to 2 of 2
  1. #1
    New Coder
    Join Date
    Aug 2009
    Thanked 0 Times in 0 Posts

    Trouble setting form to post only selected variables, i.e. checkbox, input field, etc

    I'm working with a form submit template for consumer feedback for a customer's website. The issue I'm having is that all the variable options are being carried through and posted in the email, and I only want the selected checkboxes and/or fields that contain input text to show up on the back end upon submission. HTML form code and PHP code are included below:

    HTML Form Code:
    <form method="POST" action="customer-feedback.php">
    <p>How did you hear about us?
    <p><input type="checkbox" name="Event">&nbsp;&nbsp;Event (which one):&nbsp;<input type="text" name="Which_Event" size="30">
    <p><input type="checkbox" name="Website">&nbsp;&nbsp;Website (which one):&nbsp;<input type="text" name="Which_Website" size="30">
    <p><input type="checkbox" name="Search_Engine">&nbsp;&nbsp;Search Engine
    <p><input type="checkbox" name="Word_of_Mouth">&nbsp;&nbsp;Word of Mouth
    <p>What type of racing interests you?&nbsp;&nbsp;(check all that apply)
    <p><input type="checkbox" name="IndyCar">&nbsp;&nbsp;IndyCar
    <p><input type="checkbox" name="Formula_One">&nbsp;&nbsp;Formula One
    <p><input type="checkbox" name="Sprint_Midgets">&nbsp;&nbsp;Sprint, Midgets
    <p><input type="checkbox" name="Nascar">&nbsp;&nbsp;NASCAR
    <p><input type="checkbox" name="Other">&nbsp;&nbsp;Other (which kind):&nbsp;<input type="text" name="Which_Kind" size="30">
    <p><input type="checkbox" name="Like_All">&nbsp;&nbsp;I like all auto racing
    <p><input type="checkbox" name="Like_None">&nbsp;&nbsp;I am not an auto racing fan
    <p><input type="submit" name="submit" value="Submit">
    PHP Code from (customer-feedback.php)
    PHP Code:
    // Website Contact Form Generator 
    // http://www.tele-pro.co.uk/scripts/contact_form/ 
    // Get posted data into local variables
    $EmailTo "email@yourdomain.com";
    $Communication "Customer Feedback";
    $Event Trim(stripslashes($_POST['Event'])); 
    $Which_Event Trim(stripslashes($_POST['Which_Event'])); 
    $Website Trim(stripslashes($_POST['Website'])); 
    $Which_Website Trim(stripslashes($_POST['Which_Website'])); 
    $Search_Engine Trim(stripslashes($_POST['Search_Engine'])); 
    $Word_of_Mouth Trim(stripslashes($_POST['Word_of_Mouth'])); 
    $IndyCar Trim(stripslashes($_POST['IndyCar'])); 
    $Formula_One Trim(stripslashes($_POST['Formula_One'])); 
    $Sprint_Midgets Trim(stripslashes($_POST['Sprint_Midgets'])); 
    $Nascar Trim(stripslashes($_POST['Nascar'])); 
    $Other Trim(stripslashes($_POST['Other'])); 
    $Which_Kind Trim(stripslashes($_POST['Which_Kind'])); 
    $Like_All Trim(stripslashes($_POST['Like_All'])); 
    $Like_None Trim(stripslashes($_POST['Like_None'])); 
    // validation
    if (!
    $validationOK) {
    "<meta http-equiv=\"refresh\" content=\"0;URL=error.htm\">";
    // prepare email body text
    $Body "";
    $Body .= "Discovered via: Event";
    $Body .= $Event;
    $Body .= "\n";
    $Body .= "Which Event: ";
    $Body .= $Which_Event;
    $Body .= "\n";
    $Body .= "Discovered via: Website";
    $Body .= $Website;
    $Body .= "\n";
    $Body .= "Which Website: ";
    $Body .= $Which_Website;
    $Body .= "\n";
    $Body .= "Discovered via: Search Engine";
    $Body .= $Search_Engine;
    $Body .= "\n";
    $Body .= "Discovered via: Word of Mouth";
    $Body .= $Word_of_Mouth;
    $Body .= "\n";
    $Body .= "Fan of: IndyCar";
    $Body .= $IndyCar;
    $Body .= "\n";
    $Body .= "Fan of: Formula One";
    $Body .= $Formula_One;
    $Body .= "\n";
    $Body .= "Fan of: Sprint, Midgets";
    $Body .= $Sprint_Midgets;
    $Body .= "\n";
    $Body .= "Fan of: NASCAR";
    $Body .= $Nascar;
    $Body .= "\n";
    $Body .= "Fan of: Other";
    $Body .= $Other;
    $Body .= "\n";
    $Body .= "Which Kind: ";
    $Body .= $Which_Kind;
    $Body .= "\n";
    $Body .= "I like all auto racing";
    $Body .= $Like_All;
    $Body .= "\n";
    $Body .= "I am not an auto racing fan";
    $Body .= $Like_None;
    $Body .= "\n";
    // send email 
    $success mail($EmailTo$Communication$Body"From: <email@yourdomain.com>");
    // redirect to success page 
    if ($success){
    "<meta http-equiv=\"refresh\" content=\"0;URL=index.html\">";
    "<meta http-equiv=\"refresh\" content=\"0;URL=error.htm\">";

  • #2
    Senior Coder DJCMBear's Avatar
    Join Date
    Mar 2010
    United Kindom
    Thanked 136 Times in 136 Posts
    The way to do check/radio inputs is you dont set the name as what the item is you set the name as an array and then put a value as what the item is for example.

    <form method="post" action="">
      <input type="checkbox" name="items[]" value="item 1" /> item 1
      <input type="checkbox" name="items[]" value="item 2" /> item 2
      <input type="checkbox" name="items[]" value="item 3" /> item 3
      <input type="checkbox" name="items[]" value="item 4" /> item 4
    And for the php post you do this.
    PHP Code:
    foreach($_POST['items'] As $item)
    "{$item} was checked.<br />";
    If items 1 and 3 are checked the output would be this:
    item 1 was checked.
    item 3 was checked.
    Last edited by DJCMBear; 06-22-2010 at 11:13 AM.
    Official BinPress hand picked coder.
    For anyone worried about SQL injection go have a look at my small yet powerful script here.
    Go Pledge for Light Table, if it hit's $300,000 Python and other languages will get added.
    I am 1 of 65,608 people to get a Pebble Watch :P


    Posting Permissions

    • You may not post new threads
    • You may not post replies
    • You may not post attachments
    • You may not edit your posts