Comment déterminer la section d' un membre ?
Bonjour à tous et toutes,
Dans notre unité, nous avons une cotisation qui est différente suivant les sections.
Comment puis-je déterminer la section d'un membre ?
Je cherche une commende du genre :
IF ( section du membre == 3) $cotisation == $cotiFD+$cotiUnite+$cotisection
Dans ce cas, le 3 représente les scouts .....
Je pense que si quelqun me donne la solution, j'aurai une gestioncotisation + compléte, et actualisée.
La même chose doit être faite pour les cotisation solidarité et invité.
D'avance merci

Posté le 27/04/2008 à 20:54:11
Re : Comment déterminer la section d' un membre ?
Le champ 'section' de la table PREFIXE_TABLES.'mb_membres' comprend le numero de section dont la description complete se trouve dans la table PREFIXE_TABLES.'unite_sections'.
Tu peux donc par exemple extraire les membres d'une section avec un query SQL du genre:
Code :"SELECT * FROM ".PREFIXE_TABLES."mb_membres WHERE section = '3';"
Th.

Posté le 29/04/2008 à 08:05:22
Re : Comment déterminer la section d' un membre ?
En fait, c'est le contraire que je cherche à faire.
Je ne recherche pas les membres de la section = 3
Mais bien quel est la section de Nom_sub AND Prénom_sub
"SELECT 'section' FROM ".PREFIXE_TABLES."mb_membres WHERE Nom_sub = 'Quel variable?' AND Prénom_sub = 'Quel variable?';"
C'est le nom de ces variables qui me manque dans le fichier cotisations.
Je pens qu' avec une réponse à cela , je devrait aboutir au résultat que je désire:
A savoir :
Gestion Cotisation FéDé
Gestion Cotisation Unité
Gestion Cotisation Sections
Gestion Cotisation Solidarité
Gestion Handicap
Merci pour votre aide

Posté le 30/04/2008 à 13:18:25
Re : Comment déterminer la section d' un membre ?
ChMat
Webmaster
Eh bien la section de chaque membre est stockée dans le champ
section dans la table
swp_mb_membres.
Concernant la liste des sections, SWP la charge automatiquement dans le tableau
$sections.
Si tu veux afficher la structure de ce tableau :
Code :print_r($sections);
Si tu veux juste connaître l'équivalence entre le numéro de chaque section et la section :
Code :
foreach ($sections as $numsection => $section)
{
echo $numsection.' : '.$section['nomsection'].'<br />';
}

Posté le 30/04/2008 à 19:23:21
Re : Comment déterminer la section d' un membre ?
Il est difficile d'aider sans trop connaitre les détails de ton code, mais si tu connais le nom et le prenom d'un membre, le query SQL suivant peux te donner sa section:
Code :"SELECT section FROM ".PREFIXE_TABLES."mb_membres WHERE nom_mb = 'son nom' AND prenom = 'son prenom'";
Mais si tu dois faire cette opération pour tous tes membres cela va prendre un certain temps de calcul.
Il vaut mieux extraire toutes les infos nécessaire (y compris la section) pour tous les membres désirés, puis de parcourir le résultat.
Par exemple, la ligne 400 du fichier "fichemb.php" te permet d'extraire un certain nombre d'info sur les membres et la ligne 430 perrmet de parcourir la liste obtenue. Dans cet exemple, tu trouveras le numero de section dans $membre['section'], le nom dans $membre['nom_mb'] et le prénom dans $membre['prenom'].

Posté le 30/04/2008 à 21:53:19
Re : Comment déterminer la section d' un membre ?
Je vais essayer d'être plus complet :
J'ai défini en début de script les variables suivantes:
// $coti_E1 = Montant de la cotisation des Scouts
// $coti_U = Montant de la cotisation de l'unite
// $montant_coti = Montant de la cotisation de la fédé en fonction du nombre d'animés appartenant à une même famille.
// Je crée une variable TEST
$test = "SELECT `section`
FROM ".PREFIXE_TABLES."mb_membres
WHERE actif = '1'
// ICI j' ai une erreur
AND `nom_mb_son` = $membre['nom_mb_son'] AND `prenom_son` = $membre['prenom_son'] ";
// Si je remplace $membre['nom_mb_son'] et $membre['prenom_son'] par mes donnée (DMN et FRNC) cela fonctionne
// En fonction de la valeur de ma variable test, je calcule le montant de la cotisation du membre
if ($test == '3')
{$montant_coti = $montant_coti + $coti_E1 + $coti_U;}
else {if ($test == '4') ........ }
// Voilà, j'espére avoir mis assez de ligne de code et d'explication pour que vous puissiez me venir en aide.
Voici le message d'erreur que mon site me retourne :
Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in gestioncotisations.php on line 359

Posté le 02/05/2008 à 09:24:02
Re : Comment déterminer la section d' un membre ?
En supposant que ton code est tel que tu l'as écrit ci-avant, je pense que l'erreur vient du fait que tu n'utilises pas correctement les valeurs de $membres[ ] dans ton query SQL.
La bonne version serait:
Code :$test = "SELECT `section` FROM ".PREFIXE_TABLES."mb_membres WHERE actif = '1' AND `nom_mb_son` = ".$membre['nom_mb_son']." AND `prenom_son` = ".$membre['prenom_son'] .";";
où le string est teminé avant d'y ajouter la valeur $membre[ ] desirée.
Et non:
Code :$test = "SELECT `section` FROM ".PREFIXE_TABLES."mb_membres WHERE actif = '1' AND `nom_mb_son` = $membre['nom_mb_son'] AND `prenom_son` = $membre['prenom_son']";
Il se peut également que les champs 'nom_mb_son' et 'prenom_son' ne fassent pas partie de ta variable $membre[ ]. Ces champs (nom_mb_son/prenom_son) ne font pas partie des query SQL du fichier original (gestioncotisations.php).
Ceci devrait supprimer ton erreur, mais d'après le fait que tu manipules déjà la variable(array) $membre[] je te suggèrerais plutot d'utiliser la variable $membre['section'] dans la boucle où tu traites chaque membre. Cad, dans une boucle
Code :while ($membre = mysql_fetch_assoc($res))
tu peux calculer la cotisation de la facon suivante:
Code :if ($membre['section'] == 3 ) {
$montant_coti = $montant_coti + $coti_E1 + $coti_U;
} elseif (...) { ... }
Il faut néanmoins t'assurer que le champ 'section' fasse partie du query SQL. A savoir:
Code :$sql = "SELECT nummb, prenom, nom_mb, section, ddn, cotisation FROM ".PREFIXE_TABLES."mb_membres WHERE actif = '1' AND section = '$_POST[section]' ORDER BY nom_mb, prenom ASC";
où j'ai ajouté le champ 'section' après 'nom_mb' dans ce query SQL extrait du fichier original
gestioncotisations.php.
Th.

Posté le 02/05/2008 à 23:11:56
Re : Comment déterminer la section d' un membre ?
Aah
Voici une belle réponse, que j'arrive a comprendre en plus.
Merci, je fais les corrections

Posté le 03/05/2008 à 07:34:47