petit probleme de condition ...

Eléphant du PHP | 183 Messages

06 nov. 2006, 11:45

Bonjour,

Jai un petit probleme de condition je voudrai afficher ou pas afficher si dans la base de donnée la valeur est vide ou pas vide !
<?
$ex = $d[url1];

if ($ex == 'http://') {
echo "Aucun extrait est à écouter";
} else {
echo "Ecouter : <p><a target=\"_blank\" href=\"$d[url1]\">Extrait N°1</a>";
}
?>
$d[url1]; est extrait d'une requete precendante qui marche trés bien.

Mais si dans la base de donnée $d[url1]; egal a HTTP:// je voudrais que sa n'affiche qu'il y a rien a ecouter ...

Mais sa ne marche pas

merci de votre aide.
_________
Fabien

Eléphant du PHP | 193 Messages

06 nov. 2006, 11:53

As-tu fait un echo de $ex pour en connaître le contenu?

Essaie peut-être avec ça pour être sûr que ce n'est pas un problème de majuscule:
if (strtolower($ex) == 'http://') {
echo "Aucun extrait est à écouter";
} else {
echo "Ecouter : <p><a target=\"_blank\" href=\"$d[url1]\">Extrait N°1</a>";
} 

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

06 nov. 2006, 11:54

Si dans la base de données tu l'as en majuscule et que tu le compares à une chaine en minuscule, forcément, il te dira qu'elles ne sont pas identiques :)

Tu peux utiliser les fonctions strToUpper() ou strToLower() pour passer une chaine en majuscule ou minuscule et ainsi ne plus te soucier de la casse :
if (strToLower($ex) == 'http://') 
// fonctionnera pour 'http://', 'HTTP://' voire même 'hTtP://' :)
Edit : damned ! grillé ;)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Eléphant du PHP | 183 Messages

06 nov. 2006, 11:55

Yes merci c'etait exactement cela :)
_________
Fabien