Probleme avec des conditions

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Probleme avec des conditions

par Ryle » 15 févr. 2007, 17:09

lol, ben t'étais parti faire le service en salle alors je me suis occupé du comptoir ;)

par charabia » 15 févr. 2007, 17:01

oh l'autre comment il m'a chipé mon client !!! :langue: ! hihi

Bon je n'ai rien à ajouter, c'est tout du clair :)

par kweb » 15 févr. 2007, 17:00

Super, merci pour ton aide
@+

par Ryle » 15 févr. 2007, 16:56

La fonction isSet() te permet de tester si une variable est définie. Hors ta variable $piece_jointe est nécessairement définie puisque tu la déclares toi même sur la ligne précédente :
$piece_jointe = $resultat['nom_pdf_agenda']; 
if (isset($piece_jointe)) {
  ...
}
Ce qu'il te faut tester c'est si cette variable est vide ou non. Pour cela tu peux utiliser la fonction empty() (qui retournera vrai si la variable est vide), tu peux aussi la comparer à une chaine vide ( == '' ou bien != '' selon ce qu'il te faut), voire même regarder la longueur de la chaine avec strlen() et vérifier qu'elle fait plus de 0 caractères :)

Selon la méthode qui te convient le mieux :
if (!empty($piece_jointe)) {
  ...
}
if ($piece_jointe != '') {
  ...
}
if (strlen($piece_jointe) > 0) {
  ...
}
...

par kweb » 15 févr. 2007, 16:42

merci pour cette réponse, mais pourrais tu me donné un exemple car je suis un peu perdu.
encore merci :?

par charabia » 15 févr. 2007, 16:31

Tu dois tester en plus la valeur à savoir si elle est vide ou pas. Elle existe mais peut être vide c'est pour ça que ça ne passe pas au else. Rajoutes cette conditions ça devrait le faire ;)

Probleme avec des conditions

par kweb » 15 févr. 2007, 16:25

bonjour,

j'ai créer une table avec plusieur champs dont un champ "nom_upload"qui contient le nom d'un fichier uploadé.

j'essaie au niveau de l'affichage da ma page, de faire une condition pour dire :
SI le champ "nom_upload" contient quelques chose
{ affiche ce message }

SINON
{ affiche ce message }

voici ce que j'ai fais :
$valeur = $_GET['info'];
$donnee_sql = " SELECT * FROM agenda WHERE id_agenda = '$valeur' ";
$affichage_donnee = mysql_query ($donnee_sql);
$resultat = mysql_fetch_array ($affichage_donnee);
$id = $valeur;

$piece_jointe = $resultat['nom_pdf_agenda'];
if (isset($piece_jointe))
	{echo '<strong>Télécharger le programme au format PDF</strong><a href='.$resultat['nom_pdf_agenda'].' />'.$resultat['nom_pdf_agenda'].'</a>';}
else 
	{ echo 'aucun programme disponible pour l\'instant';}
sa ne fonctionne pas comme je voudrais car, qu'il y est ou pas quelques choses de renseigner dans le champs "nom_upload" il m'affiche toujours la meme condition "SI"

pourquoi ? ou est on erreur de syntax ? merci