Soucy d'un echo avec une condition

Résolu
will.smith Messages postés 230 Date d'inscription   Statut Membre Dernière intervention   -  
will.smith Messages postés 230 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

j'ai fais ce code

<?php
if ($comp['ami_from'] != $data1['membre_id'])
{
echo '<a href="liste_d_ami.php?action=add&amp;membre_pseudo='.urlencode($data1['membre_pseudo']).'" title="Ajouter un ami">Ajouter un ami</a><br />';
}
else
{
echo '<strong>ce membre fait parti de vos amis</strong><br />';
}
?>


mais le soucy c'est qui m'affiche toujours Ajouter un ami et si je vais sur un profil de mon amis il me met toujours Ajouter un ami hors il devrait me mettre ce membre fait parti de vos amis car il est mon amis mais cette echo ne fonctionne pas

merci de votre aide
Configuration: Windows XP
Internet Explorer 7.0

18 réponses

  1. PhP Messages postés 1774 Statut Membre 606
     
    Bsr

    Liste le contenu des tes variables pour vérifier ce qui cloche

    Ajoute le code comme ci-dessous pour débogger

    <?php
    echo "<pre>";
    var_dump($comp);
    var_dump($datat1);
    echo "</pre>";
    if ($comp['ami_from'] != $data1['membre_id'])
    {
    echo '<a href="liste_d_ami.php?action=add&membre_pseudo='.urlencode($data1['membre_pseudo']).'" title="Ajouter un ami">Ajouter un ami</a><br />';
    }
    else
    {
    echo '<strong>ce membre fait parti de vos amis</strong><br />';
    }
    ?>
    0
  2. will.smith Messages postés 230 Date d'inscription   Statut Membre Dernière intervention   10
     
    merci là il met met

    NULL
    NULL

    donc comment je doit le mettre pour afficher soit l'un où l'autre

    merci
    0
  3. PhP Messages postés 1774 Statut Membre 606
     
    Hum c'est pas normal que tu obtiennes null ! Ca signifie que tes variables n'existent pas

    Elles proviennent d'où tes variables $comp['ami_from'] et $data1['membre_id'] ?
    0
  4. will.smith Messages postés 230 Date d'inscription   Statut Membre Dernière intervention   10
     
    en faite à la base j'ai mis ce code :

    //On compte le nombre de demande en cours et on met quelques liens
    $demande_ami = mysql_result(mysql_query('SELECT COUNT(*) FROM forum_amis 
    WHERE ami_to = '.intval($_SESSION['id']).' AND ami_confirm = "0"'), 0);
    
    //Cette ligne va permettre d'afficher 0 plutôt qu'un vide
    if (empty($demande_ami)) $demande_ami=0;
    
    echo '<a href="liste_d_ami.php?action=add&amp;membre_pseudo='.urlencode($data1['membre_pseudo'])
    .'" title="Ajouter un ami">Ajouter un ami</a>
    <br />';
    


    et aprés je me suis dit pk pas de mettre un echo pour dire quil est déjà mon amis

    et si je reprend la liste d'amis qui fonctionne bien et qui comprend que le membre fait dejà parti de ma liste donc il faudrais remettre ce code mais j'ai éssayé mais ça n'a pas marché

    donc voilà le code dans ma page liste d'ami où il comprend

    //On vérifie que le pseudo renvoit bien quelque chose :o
    
    $requete = mysql_query("SELECT membre_id, COUNT(*) AS nbr FROM forum_membres 
    WHERE membre_pseudo = '".$pseudo_d."'
    GROUP BY membre_pseudo") or die(mysql_error());
    $data = mysql_fetch_assoc($requete);
    $pseudo_exist = $data['nbr'];
    $i = 0;
    if(!$pseudo_exist)
    {
    echo '<p>Ce membre ne semble pas exister<br />
    Cliquez <a href="./liste_d_ami.php?action=add">ici</a> pour réessayer</p>';
    $i++;
    }
    $deja_ami = mysql_result(mysql_query("SELECT COUNT(*) AS nbr FROM forum_amis 
    WHERE ami_from = '".intval($_SESSION['id'])."' AND ami_to = '".$data['membre_id']."'
    OR ami_from = '".intval($_SESSION['id'])."' AND ami_to = '".$data['membre_id']."'"),0);
    if ($deja_ami != 0)
    {
    echo '<p>Ce membre fait déjà parti de vos amis ou a déjà proposé son amitié :p<br />
    Cliquez <a href="./liste_d_ami.php?action=add">ici</a> pour réessayer</p>';
    $i++;
    }
    


    donc il faut reprendre un bout de code et de remettre dans voirprofil mais j'ai déjà éssayé mais ça n'a pas marché

    merci de votre aitre
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. PhP Messages postés 1774 Statut Membre 606
     
    Déjà c'est $data['membre_id'] plutôt que $data1['membre_id'] : $data1[] n'existe pas on dirait

    Par contre pour $comp['ami_from'] : ça je sais pas d'où tu le sors il apparaît nulle part dans ton code
    0
  7. will.smith Messages postés 230 Date d'inscription   Statut Membre Dernière intervention   10
     
    merci donc si je met ce code

    <?php
    if ($data['ami_from'] != $data['membre_id'])
    {
    echo '<a href="liste_d_ami.php?action=add&amp;membre_pseudo='.urlencode($data['membre_pseudo']).'" title="Ajouter un ami">Ajouter un ami</a><br />';
    }
    else
    {
    echo '<strong>ce membre fait parti de vos amis</strong><br />';
    }
    ?>
    


    là il me met

    ce membre fait parti de vos amis

    pour le profil de mon amis là c'est bon

    mais si je regarde un autre profil qui n'est pas mon amis il me met toujours ce membre fait parti de vos amis au lieu dire ajouter un amis

    merci de ton aide
    0
  8. PhP Messages postés 1774 Statut Membre 606
     
    je peux pas te dire : ton code est trop incomplet

    Donne le code de toute la page
    0
  9. will.smith Messages postés 230 Date d'inscription   Statut Membre Dernière intervention   10
     
    si on reprend la page liste d'ami qui est :

    http://rafb.net/p/LiryxF17.html

    et ceux qui m'interresse c'est juste 2 echos

    1 echo pour ajouté un amis et l'autre ce membre fait parti de votre amis

    don il faut mettre soit l'un où l'autre

    merci

    et tu me diras quoi remplacer dans ce code

    <?php
    if ($data['ami_from'] != $data['membre_id'])
    {
    echo '<a href="liste_d_ami.php?action=add&amp;membre_pseudo='.urlencode($data['membre_pseudo']).'" title="Ajouter un ami">Ajouter un ami</a><br />';
    }
    else
    {
    echo '<strong>ce membre fait parti de vos amis</strong><br />';
    }
    ?>
    


    par quoi

    merci pour ton aide
    0
  10. will.smith Messages postés 230 Date d'inscription   Statut Membre Dernière intervention   10
     
    un petit up pour savoir situ as trouvé la solution pour affiché soit l'un où l'autre mon echo

    merci
    0
  11. PhP Messages postés 1774 Statut Membre 606
     
    bjr

    Il m'a fallu un certain temps avant de réaliser que tu essayais de modifier le code de la page
    voirprofil.php et pas liste_d_ami.php que tu as posté !!!

    Faut être précis : Je suis pas devin ! Les autres intervenants non plus ...

    Le code de la page liste_d_ami.php semble bien écrit c'est déjà ça ;-)

    Poste le code de la page voirprofil.php et surtout fait ressortir l'emplacement où tu veux insérer ton morceau de code !
    0
  12. will.smith Messages postés 230 Date d'inscription   Statut Membre Dernière intervention   10
     
    merci c'est pour ca que je viens posté c'est pour vous que tu m'aide car si je reprend le morceau dans liste d'ami

    et mettre dans voir profil ça ne marche plus

    merci
    0
  13. PhP Messages postés 1774 Statut Membre 606
     
    Le question est : "pourquoi copier/coller du code un peu au hasard fonctionnerait ?"

    T'as aucune chance que ça fonctionne si tu ne comprends pas de A à Z le code PHP contenu dans ta page
    voirprofil.php

    Poste le code de la page voirprofil.php

    0
  14. will.smith Messages postés 230 Date d'inscription   Statut Membre Dernière intervention   10
     
    re voilà la page voir profil j'ai bien fait pour cacher où montrer leur mail donc c'est bon

    donc je veut faire la même chose pour ajouter un amis où ce membre est votre ami

    merci

    et voilà le code

    http://rafb.net/p/qFVk4P59.html

    merci d'avance
    0
  15. PhP Messages postés 1774 Statut Membre 606
     
    Déjà ici

    $demande_ami = mysql_query('SELECT * FROM forum_amis, forum_membres WHERE ami_to="'.$_SESSION['id'].'"')or die(mysql_error());

    Il manque la clause ON dans la jointure

    Ensuite au départ tu utilises directement des variables comme $action ou $membre sans même les initialiser depuis $_GET[] ou $_POST[]

    Dans ta page liste_ami.php tu passes l'identifiant dans un paramètre nommé "m" donc PHP va récupérer $m certainement pas $membre
    0
  16. will.smith Messages postés 230 Date d'inscription   Statut Membre Dernière intervention   10
     
    donc il faut reprendre ce code

    $deja_ami = mysql_result(mysql_query("SELECT COUNT(*) AS nbr FROM forum_amis 
    WHERE ami_from = '".intval($_SESSION['id'])."' AND ami_to = '".$data['membre_id']."'
    OR ami_from = '".intval($_SESSION['id'])."' AND ami_to = '".$data['membre_id']."'"),0);
    if ($deja_ami != 0)
    {
    echo '<p>Ce membre fait déjà parti de vos amis ou a déjà proposé son amitié :p<br />
    Cliquez <a href="./liste_d_ami.php?action=add">ici</a> pour réessayer</p>';
    $i++;
    }
    


    et pour ami from et ami to ce n'est pas moi c'etait dans le tuto site de zero donc

    si tu peux m'aidé à faie mes 2 echo je t'en remerci d'avance
    0
  17. PhP Messages postés 1774 Statut Membre 606
     
    Essai avec cette requête :

    $demande_ami = mysql_query('SELECT * FROM forum_amis WHERE ami_from="'.$_SESSION['id'].'" and ami_to="'.$data1['membre_id'].'"')or die(mysql_error());

    0
  18. will.smith Messages postés 230 Date d'inscription   Statut Membre Dernière intervention   10
     
    re donc on vas reprendre au debut

    donc a partir de ce code avec tes modifs

    //On compte le nombre de demande en cours et on met quelques liens
    $demande_ami = mysql_query('SELECT * FROM forum_amis WHERE ami_from="'.$_SESSION['id'].'" and ami_to="'.$data1['membre_id'].'"')or die(mysql_error());
    $comp = mysql_fetch_array($demande_ami);
    
    if($comp['ami_from'] != $data1['membre_id'])
    {
    echo '<a href="liste_d_ami.php?action=add&amp;membre_pseudo='.urlencode($data1['membre_pseudo']).'" title="Ajouter un ami">Ajouter un ami</a><br />';
    }
    else
    {
    echo '<strong>ce membre fait parti de vos amis</strong><br />';
    }
    


    mais il ne veu pas affiché l'écho il affiche toujours ajouter un ami

    merci
    0
  19. will.smith Messages postés 230 Date d'inscription   Statut Membre Dernière intervention   10
     
    excuse de faire un up mais je veut savoir comment on fait

    merci
    0