Erreur lors d'un champs vide

Résolu/Fermé
Thetcha - Modifié par Thetcha le 20/11/2013 à 15:10
 Thetcha - 21 nov. 2013 à 09:15
Bonjour,
Je suis en train de développer un formulaire en saisie et je suis bloqué.
Mon problème est que lorsque je ne rentre pas l'age de la personne, j'ai cette ligne qui apparait :

Incorrect integer value: '' for column 'Age' at row 1

Je ne vois pas ce qui pose problème !

La ligne HTML correspond à cette ligne est la suivante :

     </tr>
         <tr>
          <td>Age :</td>
          <td><input type="int" name="Age" size="12"></td>
      </tr>


Merci d'avance

3 réponses

gautier019 Messages postés 140 Date d'inscription samedi 19 mai 2012 Statut Membre Dernière intervention 12 juin 2017 17
20 nov. 2013 à 15:50
Si c'est le problème d'un champ vide il faut vérifier que ton champs n'est pas vide avant d'exécuter la suite du formulaire :

<form method="post">
Nom : <input type="text" name="nom">
<br>Prénom : <input type="text" name="prenom">
<br>Age : <input type="int" name="age" size="12">
</form>


Coté php tu met (plus haut dans la page ou si tu as défini form action, dans une autre page)

if($_POST) {
if(!empty($_POST['nom']) AND !empty($_POST['prenom']) AND !empty($_POST['age'])) {
//Ce que tu souhaite faire...
} else {
Echo '<div style="color:red"><strong>Il reste un/plusiers champs incomplet</strong></div>';
}
}


Voilà ;)
0
Merci :)
0
ThEBiShOp Messages postés 8378 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 565
20 nov. 2013 à 15:55
Le problème vient probablement de l'attribut type de ta balise input.

Cet attribut n'est pas reconnu par tous les navigateurs, tu devrais l'enlever et vérifier ta valeur côté php.

Tu as cette erreur parce que tu dois avoir une valeur entière dans ton input, or une valeur vide n'est pas un entier.

Bref, retire l'attribut type, ça va te causer plus de problèmes qu'autre chose.
0
Salut ThEBiShOp,
J'ai retiré l'attribut 'type' de la balise input mais ca ne change rien j'ai toujours l'erreur qui apparait !
0
ThEBiShOp Messages postés 8378 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 565
20 nov. 2013 à 16:13
Tu peux remontrer ta balise ?

L'erreur apparaît où ? On peut avoir un screen qui serait un peu plus explicite ?
0
Voici l'erreur :

Incorrect integer value: '' for column 'Age' at row 1

Elle apparait au niveau de l'age et essentiellement à ce niveau.
La ligne HTML correspond à cette ligne est la suivante :


</tr>
<tr>
<td>Age :</td>
<td><input type="int" name="Age" size="12"></td>
</tr>

Merci
0
ThEBiShOp Messages postés 8378 Date d'inscription jeudi 22 mars 2007 Statut Contributeur Dernière intervention 8 février 2021 1 565
20 nov. 2013 à 17:53
type="int"

tu es sûr que tu l'as retiré ? On dirait pas ;)
0
Merci !
0