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
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.
@Anémonevérifie juste que $_POST['valeur'] est une variable qui existe, peu importe son contenu.if(isset($_POST['valeur']))
si
$_POST['valeur'] = 0; ou $_POST['valeur'] = '';
if(isset($_POST['valeur'])) retourne vrai
mais si
$_POST['valeur'] = NULL ;
if(isset($_POST['valeur'])) retourne faux<?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