Récupération formulaire ( zéro)

BigD
Invité n'ayant pas de compte PHPfrance

15 févr. 2008, 19:46

Je désire pouvoir récupérer la valeur '0' avec un formulaire. Or, en PHP 5, la valeur '0' est considéré comme un vide ...
Quelqu'un a une solution ?

Merci !!!!

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

15 févr. 2008, 20:01

Est-ce que tu pourrais être plus détaillé dans ce qui cloche ?

Parce que j'avoue ne pas avoir compris ton problème :oops:
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

BigD
Invité n'ayant pas de compte PHPfrance

15 févr. 2008, 20:55

Quand tu récupères les valeurs d'un formulaire, si il y a 0 dans le formulaire, il te récupère rien (0 étant considéré comme vide depuis PHP5).

Du coup pour récupérer la valeur 0 (et non vide), il faut taper par exemple '00'.
Mais j'aimerai trouver une autre solution à ce problème :)

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

15 févr. 2008, 21:05

Ce que tu me dis me surprend beaucoup :-k

Voici le test que je viens de faire
<form method="post" action="#">
	<input type="text" name="essai" value="" />
	<input type="submit" value="Valider" />
</form>

<?php
	echo "la version courante de PHP est :". phpversion() ."<br />\n";
	echo "<pre>";
		var_dump($_POST);
	echo "</pre>";
?>
Si je saisie "0", voilà le résulat

Code : Tout sélectionner

la version courante de PHP est :5.1.6 array(1) { ["essai"]=> string(1) "0" }
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Mammouth du PHP | 1511 Messages

15 févr. 2008, 22:18

C'est sur que si tu fais un empty sur la variable POST récuperée, c'est sur que le moteur php te retournera true, maintenant, si tu fais un =='0' sur ta sortie, après il faut voir ;)
Toutes les variables renvoyées par un formulaire sont considerée comme string, donc a partir de la, il faut faire les tests necessaires et adaptés a ce que l'on attend ;)

Eléphant du PHP | 121 Messages

18 févr. 2008, 15:26

Si ta valeur possible est 0, utilise plutôt isset() pour savoir si le champ du POST est défini ou non.