Mysql
 sql >> Base de données >  >> RDS >> Mysql

Erreur lors de la mise à jour des données MySQL via PHP

C'est le comportement défini pour les cases à cocher - seulement lorsqu'elles sont définies, elles sont incluses dans les données du formulaire.

Vous devez utiliser isset() pour déterminer si la case est cochée.

changez-le en

STAT='".isset($_POST['stats1']).", 
STAT2='".isset($_POST['stats2']).", 
STAT3='".isset($_POST['stats3']).", 
STAT4='".isset($_POST['stats4']).",  
STAT5='".isset($_POST['stats5']).", 
STAT6='".isset($_POST['stats6']).", 
STAT7='".isset($_POST['stats8']).", 
STAT8='".isset($_POST['stats8'])." 

Une autre solution de contournement qui fonctionne consiste à ajouter une variable masquée, avec le même nom, avant la case à cocher :par exemple

<form action='t1.php' method='post'>
<input type='hidden' name="cb1" value="0">
<input type='checkbox' name="cb1" title='test'>
<input type='submit'  >
</form>
<?php 
print_r($_POST);
?>