Tengo un formulario que contiene varias checkbox con distintos valores. Necesito que al darle a enviar en el formulario, los checkboxes que han sido checkeados se guarden en la base de datos que utilizo con phpMyAdmin.
Este es mi html:
<div class="row">
<div class="col-md-12">
<div class="col-md-2">
<br><label class="container">Uno
<input type="checkbox" name="checks" value="1"> <br>
<span class="checkmark"></span>
</label>
<label class="container">Dos
<input type="checkbox" name="checks" value="2"> <br>
<span class="checkmark"></span>
</label>
<label class="container">Tres
<input type="checkbox" name="checks" value="3"> <br>
<span class="checkmark"></span>
</label>
</div>
<div class="col-md-2">
<br><label class="container">Cuatro
<input type="checkbox" name="checks" value="4"> <br>
<span class="checkmark"></span>
</label>
<label class="container">Cinco
<input type="checkbox" name="checks" value="5"> <br>
<span class="checkmark"></span>
</label>
<label class="container">Seis
<input type="checkbox" name="checks" value="6"> <br>
<span class="checkmark"></span>
</label>
</div>
Php que guarda los datos
<?php
//conectamos Con el servidor
$host="localhost";
$user="root";
$pass="";
$db="prueba";
$con = mysqli_connect($host,$user,$pass,$db) or die ("Problemas al conectar");
mysqli_select_db($con,$db) or die ("Problemas al conectar con la base de datos");
//recuperar las variables
$nombre=$_POST['nombre'];
$checks=$_POST['checks'];
//Hacer secuencia sql
$sql="INSERT INTO datos (nombre, checks) VALUES ('{$nombre}','{$checks}')";
//ejecutamos la sentencia de sql
$ejecutar=mysqli_query($con,$sql);
//verificamos la ejecucion
if(!$ejecutar){
echo"Hubo Algun Error";
}else{
echo"Datos Guardados Correctamente<br><a href='index.html'>Volver</a>";
}
if (isset($_POST['formulario'])) {
if (isset($_POST['checks']) && $_POST['checks'] == '1')
if (isset($_POST['checks']) && $_POST['checks'] == '2')
if (isset($_POST['checks']) && $_POST['checks'] == '3')
if (isset($_POST['checks']) && $_POST['checks'] == '4')
if (isset($_POST['checks']) && $_POST['checks'] == '5')
if (isset($_POST['checks']) && $_POST['checks'] == '6')
}
?>
Php que muestra los datos
<?php
//hacemos la conexion para la base de datos:
$con= mysqli_connect('localhost','root','');
//verificamos la conexion
if(!$con){
echo"No Se Encontro El Servidor";
}else{
$db= mysqli_select_db('prueba'); //nombre bbdd
//verificamos la base de datos
if(!$db){
echo"No Se Encontro La Base De Datos";
}
}
//Se Hace la sentencia sql:
$sql="SELECT * FROM datos"; //nombre tabla
//ejecutamos la sentencia de slq:
$ejecutar=mysqli_query($sql);
//traemos todos los valores en un array:
$datos=mysqli_fetch_array($ejecutar);
//imprimimos los datos de manera dinamica
echo "<table border='1'>";
echo"<tr>";
echo "<th align='center'><b>Nombre</th>";
echo "<th align='center'><b>Checks</th>";
echo"</tr>";
for($i=0; $i<$datos; $i++){
echo"<tr><td>$datos[0]</td>";
echo"<td>$datos[1]</td>";
echo"<td>$datos[2]</td>";
echo"</tr>";
$datos=mysqli_fetch_array($ejecutar);
}
echo"</table>";
?>