Page 1 sur 1
Différence entre if(isset($_POST['valeur'])) et if($_POST['v
Posté : 23 janv. 2008, 02:14
par Anémone
Bonjour,
Mon petit doigt me dit qu'il doit y avoir une différence entre ces deux syntaxes, mais en vérité le contraire ne me déplairait pas(...) car je peine à la comprendre:
if(isset($_POST['valeur']))
if($_POST['valeur'] !="")
Merci pour vos lumières
Posté : 23 janv. 2008, 02:27
par Genova
Bonsoir,
pour commencer as tu pris le temps de chercher ?
http://fr.php.net/manual/fr/function.isset.php
isset() est tout de même une des bases du langage.
if($_POST['valeur'] !="")
vérifie que la valeur de $_POST['valeur'] soit différente du "vide" ('' ou 0 ou NULL)
if(isset($_POST['valeur']))
vérifie juste que $_POST['valeur'] est une variable qui existe, peu importe son contenu.
Posté : 23 janv. 2008, 04:49
par AB
if(isset($_POST['valeur']))
vérifie juste que $_POST['valeur'] est une variable qui existe, peu importe son contenu.
@Anémone
Attention cependant
si
$_POST['valeur'] = 0; ou $_POST['valeur'] = '';
if(isset($_POST['valeur'])) retourne vrai
mais si
$_POST['valeur'] = NULL ;
if(isset($_POST['valeur'])) retourne faux
Posté : 23 janv. 2008, 07:49
par cf357
De même, si tu tentes d'écrire ça :
<?php
if($_POST['valeur'] !="");
?>
alors qu'il n'y a pas d'élément "valeur" dans le tableau $_POST, tu auras droit à un beau warning ! (si ton serveur les affiche

)
Posté : 23 janv. 2008, 12:07
par Ryle
A voir également : la fonction empty() qui test à la fois si la variable n'est pas définie ou si celle-ci est définie mais vide

Posté : 25 janv. 2008, 01:19
par Anémone
Merci pour toutes ces réponses, que je vais approfondir en les mettant en pratique dans mon script en cours....
Posté : 25 janv. 2008, 02:01
par x@v
il n'y a rien a chercher
isset — Détermine si une variable est affectée
Alors que tu demandes si la variable est une chaine vide.
$toto != ""