IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Espace membre, parrainage et système de point


Sujet :

Langage PHP

  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2006
    Messages
    985
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2006
    Messages : 985
    Points : 460
    Points
    460
    Par défaut Espace membre, parrainage et système de point
    Bonjour à tous,
    J'ai créé un espace membre avec parrainage c'est où chaque membre a comme id_parent, l'id du membre qui l'a ammener dans le système. Là tout roule.
    La difficulté que j'ai c'est ajouter un système de point. c'est à dire :
    A amène B
    B amène C
    C amène D

    B est de la première génération de A, A gagne 5 points sur B
    C est de la deuxième génération de A, A gagne 4 points sur C
    D est de la troisième génération de A, A gagne 3 points sur D

    Ainsi de suite...

    Comment faire sur la fiche du membre, trouver (en PHP) le nombre de points total du membre sur toute sa ligné ?
    En fait une boucle qui parcourt toute la ligné d'un membre (recursive) et on ressort le nombre de points total du membre.

    Mes sincères salutations...

  2. #2
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 199
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 199
    Points : 8 424
    Points
    8 424
    Billets dans le blog
    17
    Par défaut
    Salut !!

    Comment faire sur la fiche du membre, trouver (en PHP) le nombre de points total du membre sur toute sa ligné ?
    En fait une boucle qui parcourt toute la ligné d'un membre (recursive) et on ressort le nombre de points total du membre.
    La réponse est dans la question
    Quel est le pb ?

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2006
    Messages
    985
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2006
    Messages : 985
    Points : 460
    Points
    460
    Par défaut
    Citation Envoyé par Séb. Voir le message
    Salut !!


    La réponse est dans la question
    Quel est le pb ?
    Un exemple de code pour faire cela, là est le problème.

    Merci.

  4. #4
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2006
    Messages
    985
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2006
    Messages : 985
    Points : 460
    Points
    460
    Par défaut
    Salut,
    J'avais déjà ce bout de code pour lister la ligné d'un membre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    function getChild($id_membre)
    {
    	$result = mysql_query('select id_membre where id_parent ='.$id_membre);
    	while($row = mysql_fetch_object($result))
    	{
    		getChild($row->id_membre);
    	}
    }
    $result = mysql_query('select id_membre where id_parent = 0');
    while($row = mysql_fetch_object($result))
    {
    	getChild($row->id_membre);
    }
    Comment intégrer le système de point?

    Merci d'avance...

  5. #5
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 199
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 199
    Points : 8 424
    Points
    8 424
    Billets dans le blog
    17
    Par défaut
    Un premier jet à partir de ton script :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    function getPoints($id_membre, $points = 5)
    {
        $result = mysql_query('select id_membre from membres where id_parent ='.$id_membre);
        $total = 0 ;
        while ( $row = mysql_fetch_object($result) ) {
            $total += $points ;
            if ( $points > 1 ) {
                $total += getPoints($row->id_membre, $points - 1);
            }
        }
        return $total ;
    }
    
    echo "Points du membre n° $id = ", getPoints($id) ;
    A utiliser parcimonieusement.

  6. #6
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2006
    Messages
    985
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2006
    Messages : 985
    Points : 460
    Points
    460
    Par défaut
    Citation Envoyé par Séb. Voir le message
    Un premier jet à partir de ton script :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    function getPoints($id_membre, $points = 5)
    {
        $result = mysql_query('select id_membre from membres where id_parent ='.$id_membre);
        $total = 0 ;
        while ( $row = mysql_fetch_object($result) ) {
            $total += $points ;
            if ( $points > 1 ) {
                $total += getPoints($row->id_membre, $points - 1);
            }
        }
        return $total ;
    }
    
    echo "Points du membre n° $id = ", getPoints($id) ;
    A utiliser parcimonieusement.
    Exact merci,
    Par contre le code ci-dessous, ne résout pas l'autre problème.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    function getChild($id_membre)
    {
    	$result = mysql_query('select id_membre where id_parent ='.$id_membre);
    	while($row = mysql_fetch_object($result))
    	{
    		getChild($row->id_membre);
    	}
    }
    $result = mysql_query('select id_membre where id_parent = 0');
    while($row = mysql_fetch_object($result))
    {
    	getChild($row->id_membre);
    }
    En fait je voudrais d'une part récupérer et afficher tous les enfants d'un membre donné (peut être sous forme de tableau, avec foreach pour parcourir et count() pour le nombre total d'enfant).

    Une idée...?

    Merci d'avance...

  7. #7
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 199
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 199
    Points : 8 424
    Points
    8 424
    Billets dans le blog
    17
    Par défaut
    Citation Envoyé par okoweb Voir le message
    Par contre le code ci-dessous, ne résout pas l'autre problème.
    Je ne vois pas où il a été fait mention d'un autre pb

    En fait je voudrais d'une part récupérer et afficher tous les enfants d'un membre donné (peut être sous forme de tableau, avec foreach pour parcourir et count() pour le nombre total d'enfant).

    Une idée...?
    Donne un exemple concret.

  8. #8
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2006
    Messages
    985
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2006
    Messages : 985
    Points : 460
    Points
    460
    Par défaut
    Bonjour Grand Seb.
    Déjà grand merci pour la solution ci-haut sur le systeme de points. ça marche impeccable.
    Citation Envoyé par Séb. Voir le message
    Donne un exemple concret.
    Toujours dans le cadre de mon espace membre et son parrainage(A amène B amène C...), je souhaite une boucle qui me permette d'afficher tous les enfants d'un membre, ceci me permettra de faire un lien pour voir la fiche du membre d'une part et d'autre part le nombre d'enfant d'un membre. J'ai donc pensé à une fonction getChild() qui retourne un tableaux de membres correspondant aux enfants d'un parent donné (ex. getChild(1)) et un count(getChild(1)) me donnerait le nombre d'enfants de ce membre. Mais je n'y arrive pas.

    Meilleures salutations.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 197
    Dernier message: 27/04/2021, 00h11
  2. [MySQL] Système de point pour les membres de mon site
    Par black-hat dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 17/05/2012, 16h48
  3. Espace membre, parrainage et système de points
    Par okoweb dans le forum Langage
    Réponses: 7
    Dernier message: 20/05/2009, 18h40
  4. Comment procéder pour un système de points à attribuer aux membres ?
    Par cuisto44000 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 21/08/2008, 14h52
  5. [Système] Gestion d'espace membre
    Par pas30 dans le forum Langage
    Réponses: 8
    Dernier message: 22/07/2007, 15h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo