passing values to sql through check boxes and dropdowns

时间:2016-02-03 03:41:59

标签: php mysql

How can i pass Drop down values to sql database and also the check box for example if a user selects English and maths than the value inserted in to the database would be 1 or else the value would be 0

    <form>
        <p id="p1">Select Your Year</p>
            <select id="year_sel">

             <option value="blank"></option>
                <option id="primary" value="primary">Primary</option>

                    <option value="1">Year one</option>
                        <option value="2">Year two</option>
                            <option value="3">Year Three</option>
    </select>
    <input type="checkbox" name="Math" value="Math">Math<br>
                <input type="checkbox" name="English" value="English">English<br>
                <input type="checkbox" name="HealthScience" value="HealthScience">Health Science<br>

<input class="sub_reg" type="submit" value="Register Subjects" />
</form>

this is how my database looks like enter image description here

3 个答案:

答案 0 :(得分:2)

First, your <select id="year_sel"> needs a name attribute to post ->

<select id="year_sel" name="year_sel" >

Since you are using <form> the default is get, so you would get the selected value in $_GET

$year_sel = $_GET['year_sel'];

If you changed it to

<form method="post">

then you would get it in $_POST

$year_sel = $_POST['year_sel']

Second, checkboxes are only posted if checked, so you can use isset() to set a value using a ternary -

$math = isset($_GET['Math']) ? 1 : 0; 
$english = isset($_GET['English']) ? 1 : 0;
...[rest of your checkboxes]...

swap $_GET/$_POST like the select

$math = isset($_POST['Math']) ? 1 : 0; 
$english = isset($_POST['English']) ? 1 : 0;

答案 1 :(得分:0)

<select id="year_sel" name="year_sel">
       <option value="primary">Primary</option>
       <option value="1">Year one</option>
       <option value="2">Year two</option>
       <option value="3">Year Three</option>
</select>

on your form action something.php file use this to get the select value

$language = $_POST["year_sel"]; // chose whetever your form method

establish the database connection please do refer some tutorials (if you don't know )

write the mysqli insert command like

$SQL = "INSERT INTO yourtable (language) VALUES ('$language')";
    mysqli_real_escape_string($sql);
    $result = mysqli_query($sql) or die (mysqli_error());

now you can insert this value in your mysql or any database table

this is not tested

答案 2 :(得分:0)

<form>
    <p id="p1">Select Your Year</p>
     <select id="year_sel" name="year_sel">
      <option value="blank"></option>
      <option id="primary" value="primary">Primary</option>
      <option value="1">Year one</option>
      <option value="2">Year two</option>
      <option value="3">Year Three</option>
     </select>

<?php 

$variable = $_POST["year_sel"]; ?>

Should mention the HTML ELEMENT name to get the value.