0

I'm new to programming, I have created a form with several check boxes and text fields. Each text field will activated if the check box is selected. The intersect key array is used to get all the checked check-box names and text field values. I want to insert these array data into a database table.

Can anyone give me some codes to do this. Thanks :)

This is function.php file

    global $usedTexts;
    $usedTexts = array();

    function postdata(){
        if ( isset($_POST['submit']) && array_key_exists("t", $_POST)  && is_array($_POST["t"]) && array_key_exists("cb", $_POST) && is_array($_POST["cb"])) {
             $usedTexts = array_intersect_key($_POST["t"], $_POST["cb"]);
        }
    }

and this is index.php file

  <?php include_once("function.php"); ?>
  <?php postdata(); ?>

  <form action="" method="post">
      <input type="checkbox" name="cb[1]" value="" onclick="document.getElementById('t1').disabled=!this.checked;" />
      <input type="number" max="5" min="1" id="t1" name="t[1]" value="" disabled="disabled" /> <br /><br />

      <input type="checkbox" name="cb[2]" value="" onclick="document.getElementById('t2').disabled=!this.checked;"/>
      <input type="number" max="5" min="1"id="t2" name="t[2]" value="" disabled="disabled" /><br /><br />

      <input type="checkbox" name="cb[3]" value="" onclick="document.getElementById('t3').disabled=!this.checked;"/>
      <input type="number" max="5" min="1"id="t3" name="t[3]" value="" disabled="disabled" /><br /><br />

      <input type="checkbox" name="cb[4]" value="" onclick="document.getElementById('t4').disabled=!this.checked;"/>
      <input type="number" max="5" min="1"id="t4" name="t[4]" value="" disabled="disabled" /><br /><br />

      <input name="submit" type="submit" value="Submit" />
  </form>
2
  • Can you share your table structure? Commented Nov 16, 2013 at 19:50
  • table name is mysubjects and columns are subjectId (primary key) and subjectExp. checkbox values should insert into subjectId and text field values should go to subjectExp. Thanks :) Commented Nov 16, 2013 at 19:55

1 Answer 1

1

Can you try this,

      if ( isset($_POST['submit']) && array_key_exists("t", $_POST)  && is_array($_POST["t"]) && array_key_exists("cb", $_POST) && is_array($_POST["cb"])) {
        $usedTexts = array_intersect_key($_POST["t"], $_POST["cb"]);

                foreach($usedTexts as $subjectId=>$subjectExp){

                    $query=  "insert into mysubjects (subjectId, subjectExp) values('".$subjectId."','".$subjectExp."')";
                    //execute your query, before that make sure you have established the database connection
                }               

      }
Sign up to request clarification or add additional context in comments.

3 Comments

i want to insert data into subjectId column also from the array
subjectId added from array, please check
NP. Glad to help you.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.