Problème avec condition et &&

bloub
Invité n'ayant pas de compte PHPfrance

30 mai 2008, 00:00

Salut à tous,

J'ai un soucis avec un pauvre truc de débutant (c'te honte).

Je vous laisse tester par vous même c'est très simple à comprendre :
<?php
$variable = "";
$variableb = "";


if(isset($variable) && isset($variable2)){
    echo "Aucune variable n'est renseignée";
}
else {
    echo "l'une des deux est OK";
}
?>
J'arrive pas à lui faire dire qu'aucune variable n'est renseignée et que tout est OK si l'une des deux existe.

bloub
Invité n'ayant pas de compte PHPfrance

30 mai 2008, 00:06

A noter qu'il faut mettre variable2 à la ligne 3 petite erreur de frappe (qui ne change rien au probleme)

merci de votre attention

Eléphanteau du PHP | 39 Messages

30 mai 2008, 01:01

Essaye ça
<?php
$variable = "";
$variableb = "";


if(($variable=="") && ($variableb=="")){
    echo "Aucune variable n'est renseignée";
}
else {
    echo "l'une des deux est OK";
}
?>
:wink:
C'est en forgeant qu'on se forge

Mammouth du PHP | 2937 Messages

30 mai 2008, 01:21

Mieux encore pour essayer.
<?php
$variable = '';
$variableb = '';

if (!isset ($variable) && !isset ($variableb))
{
    echo 'Aucune variable n\'est définie';
}
else if (empty ($variable) && empty ($variableb))
{
    echo 'Les variables sont vides';
}
else
{
    echo 'L\'une des deux est OK';
}
?>
On peut même ajouter avant le if, pour goûter à la première condition :
unset ($variable);
unset ($variableb);

bloub
Invité n'ayant pas de compte PHPfrance

30 mai 2008, 01:39

superça fonctionne mille merci :)

ViPHP
AB
ViPHP | 5818 Messages

30 mai 2008, 04:25

<?php
$variable = "";
$variableb = "";

if(isset($variable) && isset($variable2)){
    echo "Aucune variable n'est renseignée";
}
else {
    echo "l'une des deux est OK";
}
?>
J'arrive pas à lui faire dire qu'aucune variable n'est renseignée et que tout est OK si l'une des deux existe.
Là c'est sûr ça risquait pas de marcher puisque isset() s'emploie pour savoir si une variable est affectée, c'est à dire = à n'importe qu'elle valeur, y compris = "" ou même = 0 .
Tu faisais donc strictement le contraire de ce qu'il fallait faire. T'avais pas lu la doc ? Tu devrais peut-être garder le lien de ce site sous le coude http://fr.php.net/manual/fr/function.isset.php.
Sinon puisque tu dis que tu es débutant, il y a phpdebutant.org qui permet de bien commencer et où les choses sont expliquées pas à pas.
Je dis pas ça pour te jeter, reviens nous voir quand tu veux, mais c'est vraiment une bonne adresse pour faire ses tous premiers pas.

ViPHP
ViPHP | 4674 Messages

30 mai 2008, 08:12

Hey :),
J'ai un soucis avec un pauvre truc de débutant (c'te honte).
J'ajouterai enfin qu'il n'y a pas de honte à avoir. Tu postes dans un salon débutant où on trouve … des débutants. On est tous passer par là et sache que tu as fait la bonne chose : à savoir, poser la question ! C'est comme ça qu'on apprend.

Donc il n'y a pas de honte :).

Enfin, si tu veux initialiser tes variables et que isset te retourne false, tu peux utiliser la valeur null :
/**
 * On initialise une variable.
 */
$var = null;
var_dump(
    isset($var)
);

/**
 * Affichera :
 *     bool(false)
 */
« Un handicap est le résultat d'une rencontre entre une déficience ou différence et une incapacité de la société à répondre à celle-ci. »

Hoa : http://hoa-project.net (sur @hoaproject).

bloub
Invité n'ayant pas de compte PHPfrance

31 mai 2008, 10:41

Ben non justement je suis pas débutant c'est bien là qu'est la honte :P
J'ai fais des recherches en ligne et essayé plusieurs trucs avant de poster mon dernier ici.
En tout cas c'est cool de savoir qu'il y a une communauté dispo pour un coup de paluche assez rapidement :)

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

31 mai 2008, 13:40

Modération :
Puisque ta question est résolue, j'ajoute le tag [Résolu]
pour indiquer aux personnes qui voudront consulter ce sujet qu'il contient une solution.

Tu peux réaliser cette opération toi-même
en cliquant sur le bouton Image qui s'affiche en haut à gauche de ce sujet
si tu as posté le 1er message en tant que membre (inscrit et identifié).

Alors... inscris-toi !!! ;)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...