store checkbox value to mysql database

I have problem in storing checkbox values in mysql db (only the last value is stored in the database). How can I fix this code to store all checked values?

<label class="q" for="q1">Which, if any, of these activities did you do on the Internet in the last 30 days? 
</label><br><br>
<input name="q1[]" type="checkbox" value="a1">Used e-mail<br>
<input name="q1[]" type="checkbox" value="a2">Used instant messenger & chat room<br>
<input name="q1[]" type="checkbox" value="a3">Made a purchase for personal use<br>
<input name="q1[]" type="checkbox" value="a4">Downloaded/Played a video game<br>
<input name="q1[]" type="checkbox" value="a5">Obtained news/information/current events<br>
<input name="q1[]" type="checkbox" value="a6">Looked for employment (Used classified listings)<br>
<input name="q1[]" type="checkbox" value="a7">Looked for recipes<br>
<input name="q1[]" type="checkbox" value="a8">Downloaded a movie<br>
<br>



<?php

include('config.php');

$tbl_name="temp_members_db";
$q1=$_POST['q1'];
$sql="INSERT INTO $tbl_name(q1)VALUES('$q1')";
?>

Answers


You can use implode http://php.net/manual/en/function.implode.php

$q1=implode(',', $_POST['q1']);

        <html>
    <head><title>Example</title></head>
    <body>
        <form action="" method="post">
            <table width="50%">
            <tr>
        <td><input type="checkbox"name="boxes[]"value="8am">1</input></td>
                <td>8am</td>
            </tr>
            <tr>
        <td><inputtype="checkbox"name="boxes[]"value="9am">2</input></td>
                <td>9am</td>
            </tr>
            <tr>
        <td><input type="checkbox"name="boxes[]"value="10am">3</input></td>
                <td>10am</td>
            </tr>
            </table>
            <input type="submit" name="submit">
        </form>
        <?php
            if(isset($_POST['submit'])){
            require_once("config.php");
            if(isset($_POST['boxes'])){
            $t1=implode(',', $_POST['boxes']);
            $s = "insert into new(time) values('$t1')"; 
                $res=mysql_query($s);
                if($res){
                    echo "insert success";
                }else{
                    echo "error in inserting";
                }
          }

        }

       ?>
    </body>
</html>

please try this.


I experienced the same issue for check boxes implode() works like a charm. For radio buttons you'll need to use an associative array for implode() to work.


Need Your Help

jQuery Validation at least one checkbox is selected

jquery jquery-validate

I have the following piece of html code for form checkboxes

About UNIX Resources Network

Original, collect and organize Developers related documents, information and materials, contains jQuery, Html, CSS, MySQL, .NET, ASP.NET, SQL, objective-c, iPhone, Ruby on Rails, C, SQL Server, Ruby, Arrays, Regex, ASP.NET MVC, WPF, XML, Ajax, DataBase, and so on.