L'insertion de plusieurs valeurs de case à cocher à partir d'un formulaire dans une table de base de données nécessite une approche spécifique pour gérer la nature matricielle des éléments de case à cocher. Voici comment procéder :
Modifiez les noms des cases à cocher dans votre formulaire en ajoutant [] à la fin pour indiquer qu'elles font partie d'un tableau. Cela permet à PHP d'accéder aux valeurs vérifiées sous forme de tableau.
<input type="checkbox" name="Days[]" value="Daily">Daily<br> <input type="checkbox" name="Days[]" value="Sunday">Sunday<br> ...
Dans votre script PHP, récupérez les valeurs cochées en utilisant :
$checkBox = $_POST['Days'];
Utilisez une boucle pour parcourir le tableau $checkBox et insérez chaque valeur vérifiée dans le tableau.
if (isset($_POST['submit'])) { foreach ($checkBox as $value) { $query = "INSERT INTO example (orange) VALUES ('$value')"; mysql_query($query) or die(mysql_error()); } echo "Complete"; }
Alternativement, vous pouvez utiliser implode() pour combiner les valeurs vérifiées dans une chaîne séparée par des virgules et l'insérer dans une seule colonne du tableau :
$checkBox = implode(',', $_POST['Days']); ... $query = "INSERT INTO example (orange) VALUES ('$checkBox')";
Cette approche stocke toutes les valeurs vérifiées dans une seule colonne, alors que la précédente La méthode insère chaque valeur dans des lignes distinctes.
N'oubliez pas de mettre à jour votre code pour utiliser mysqli au lieu de mysql pour des raisons de sécurité et de performances.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!