Bonjour, j'utilise un formulaire d'inscription qui alimente une base de donnée, ce formulaire contient entre autres des champs ou l'utilisateur doit taper un entier, qui est facultatif. J'aimerais donc que lorsque l'utilisateur laisse ce champ vide, le champ correspondant dans la base de donnée soit NULL et non 0.
Voilà des extraits du code:
if(isset($_POST['NiveauEtudeMin'])) $NiveauEtudeMin=$_POST['NiveauEtudeMin']; else $NiveauEtudeMin="";
...
if ($NiveauEtudeMin=="" ) $NiveauEtudeMin=NULL;
...
mysql_query("UPDATE tiers SET ... NiveauEtudeMin='".$NiveauEtudeMin."', NiveauEtudeMax='".$NiveauEtudeMax."' ... WHERE NumTiers='".$NumTiers."'" ) or die('Erreur SQL !<br>'.mysql_error());
cette requête ci fonctionne, mais me met des 0 pour les entiers et des 0000-00-00 pour les dates non remplies.
Si j'enlêve les simples quotes de ma requête:
mysql_query("UPDATE tiers SET ... NiveauEtudeMin=".$NiveauEtudeMin.", NiveauEtudeMax=".$NiveauEtudeMax." ... WHERE NumTiers='".$NumTiers."'" ) or die('Erreur SQL !<br>'.mysql_error());
Le script me retourne une erreur.
Evidemment j'ai configuré ma table dans phpmyadmin pour que les champs en question puissent recevoir la valeur NULL.
Merci d'avance.