Faire disparaitre un lien dynamique php/sql

Résolu
Bonjour à vous,

1/ Je me connecte à ma base, je fais une requete, et j'affiche le résultat :
d'abord le nom: <?php echo $donnees['nom']; ?> (j'ai simplifié, il y a d'autres champs...)
ensuite un lien :
<?php echo '<a href="commentaires.php?nom=' . stripslashes($donnees['nom']) . '">'; ?>voir les commentaires </a>

2/ A l'écran j'ai donc quelque chose de ce type (en italique, un lien qui m'affiche les commentaires pour le nom concerné) :
nom1 voir les commentaires
nom2 voir les commentaires
nom3 voir les commentaires
nom4 voir les commentaires

3/ Mon problème : parfois, je n'ai pas de commentaires, cad que dans ma table commentaire,le champ nom n'est pas rempli.
Je voudrais donc que dans ce cas, le lien n'apparaisse pas. Comment faire ?

Je peux mettre en ligne le code si vous voulez, la méthode me suffirait...

J'ai posté un post similaire sans réponse, j'ai donc reformulé pon titre...

Merci pour toute indication car moi je nage et je me nois...
Configuration: Windows XP
Firefox 2.0.0.7

11 réponses

  1. tout betement avec une condition

    if($donnees['nom']!=null) { echo <a href="commentaires.php?nom=' . stripslashes($donnees['nom']) . '">'; }
    1. pour la condition, oui, bien sur, je suis d'accord, mais le texte du lien est hors du code php...
      en fait j'ai un problème de syntaxe...
      1. Tu fais :

        <? php
        if ($donnees[nom] != "")
        echo '<a href="commentaires.php?nom='.stripslahes($donnees[nom]).'"> Voir les commentaires </a>';
        ?>

        Et voila... si y a rien, rien ne s'affiche
        1. non, ça marche tjrs pas, ça m'affiche à chaque fois un texte (pas un lien) : Voir les commentaires '; ?>

          je vous mets les éléments :

          1/ ma requete, ça, ça foncionne :

          $reponse = mysql_query("SELECT principal.*, round(AVG(note),1) note_moyenne, commentaire.nom nom_dans_requete FROM principal LEFT OUTER JOIN commentaire ON commentaire.nom=principal.nom WHERE numero_region='".$_GET['numero_region']."' GROUP BY principal.nom")or die(mysql_error());

          2/ mes principaux echos :

          <?php echo $donnees['nom']; ?>____________le nom dans ma table principal (ça fonctionne)
          <?php echo $donnees['note_moyenne']; ?>________(ça fonctionne aussi)

          et puis :
          <?php echo '<a href="voir_les_commentaires.php?nom=' . stripslashes($donnees['nom']) . '">'; ?>voir les commentaires </a>
          (ça m'affiche le lien, mais à chaque fois... )
          <? php if ($donnees[nom_dans_requete] != "") echo '<a href="voir_les_commentaires.php?nom='.stripslahes($donnees[nom]).'"> Voir les commentaires </a>'; ?>
          (ça c'est ce que vous m'avez conseillé, et qui m'affiche à chaque fois : Voir les commentaires '; ?>)

          voilà... merci à vous

          1. salut Jean_2

            Tiens, mais c'est moi !!!
            Je peux pas m'aider, mais au moins je me soutiens moralement lol...

            aidez-moi svp
            1. Regarde bien ce que j'ai ecrit, c'est pas ce que tu as copier !

              Toi tu ecrit ca :

              <?php echo '<a href="voir_les_commentaires.php?nom=' . stripslashes($donnees['nom']) . '">'; ?>voir les commentaires </a>

              Moi je t'ecrit ca :

              <?php echo '<a href="voir_les_commentaires.php?nom=' . stripslashes($donnees['nom']) . '">voir les commentaires </a>';?>
              1. c'est bon makkro c'est résolu.
                merci à toi

                A propos de ta précédente intervention, justement si tu regarde bien mon dernier post, je dis (pas clairement, mais je dis) :

                <?php echo '<a href="voir_les_commentaires.php?nom=' . stripslashes($donnees['nom']) . '">'; ?>voir les commentaires </a>
                (ça m'affiche le lien, mais à chaque fois... ) ===========> c'est ce que moi j'avais fait tout seul

                puis...
                <? php if ($donnees[nom_dans_requete] != "") echo '<a href="voir_les_commentaires.php?nom='.stripslahes($donnees[nom]).'"> Voir les commentaires </a>'; ?>
                (ça c'est ce que vous m'avez conseillé, et qui m'affiche à chaque fois : Voir les commentaires '; ?>)
                ============> c'est ce que tu m'avais conseillé...


                Alors pourquoi ce que tu m'as conseillé m'affichait m'affichait tjrs Voir les commentaires '; ?> ????
                Parce que stripslashes et pas stripslahes

                en gros, t'avais fait une tite faute de frappe, mais j'aurai pu m'en appercevoir tout seul...

                Conclusion : la solution :
                <?php echo '<a href="voir_les_commentaires.php?nom=' . stripslashes($donnees['nom']) . '">voir les commentaires </a>';?>
                Merci à toi