Re: [Galette-devel] Réinitialisation d'un champ dynamique

[ Thread Index | Date Index | More lists.galette.eu/devel Archives ]


Bonjour,

Je reviens vers vous car j'ai trouvé une chose qui n'était pas correcte dans mon code :
"if ($adherent['dyn'][36][1] = 1){"

Avec la bonne syntaxe, ça va beaucoup mieux :
"if ($adherent['dyn'][36][1] == 1){"

Une erreur de débutant !... Vous le voyez pas, mais je suis rouge de honte ... lol

Après, je me demande si la méthode est bonne !? Car, le fait que mon if fonctionne permet à la boucle de ne pas être trop longue mais quid du nombre de boucle (soit d'adhérents) qu'il est possible de traiter de cette manière !?...

Merci, en tout cas !!!
@++
Fred

----- Mail original -----
> De: "f lassave" <f.lassave@xxxxxxx>
> À: devel@xxxxxxxxxxxxxxxx
> Envoyé: Dimanche 9 Juillet 2017 11:18:14
> Objet: [Galette-devel] Réinitialisation d'un champ dynamique
> 
> Bonjour,
> 
> Après une période de "vacances", et la fin de saison de notre club de
> Judo, je regarde ce qu'il est possible d'automatiser pour la
> préparation de la prochaine saison ...
> 
> Pour ce faire, je dois réinitialiser certains champs dynamiques, sur
> tous les adhérents ...
> J'ai commencé par une case à cocher "Enregistré à la Fédération"
> (champ qui sert au staff à ne pas faire plusieurs demandes de
> licences, auprès de la fédé, pour le même adhérent).
> 
> Cette requête n'étant nécessaire qu'une fois par saison, j'ai ajouté
> un bouton dans le script admintools, avec le code suivant (qui
> fonctionne) :
> "
> /**
> Réinitialisation du champ "Enregistré à la Fédération"
> **/
> if ( isset($_POST['initsavefd']) ) {
>     $select = $zdb->select(Adherent::TABLE);
> 	$result = $zdb->execute($select);
> 	
> 	$dyn_fields = new DynamicFields();
> 	
> 	foreach ($result as $r){
> 		
> 		$id_adh = $r->id_adh;
> 		$member = new Adherent((int)$id_adh);
> 		
> 		// declare dynamic field values
> 		$adherent['dyn'] = $dyn_fields->getFields('adh', $id_adh, false);
> 		if ($adherent['dyn'][36][1] = 1){
> 			$adherent['dyn'][36][1] = 0;
> 			$res = $dyn_fields->setAllFields('adh', $id_adh,
> 			$adherent['dyn']);
> 		}
> 		
> 	}
> }
> "
> 
> Mon souci est le suivant :
> Ce code fonctionne et donne le résultat attendu mais le navigateur se
> met à "mouliner", comme si il essayait de se connecter au serveur,
> pour me renvoyer, au final, une jolie page me disant qu'il n'arrive
> pas à se connecter au serveur :
> 
> "Service Unavailable
> 
> The server is temporarily unable to service your request due to
> maintenance downtime or capacity problems. Please try again later."
> 
> J'en conclu que mon code est trop lourd !? J'ai cherché à "alléger"
> le code, mais le résultat est toujours le même et je n'ai plus
> d'idée ... :/
> Je me tourne donc vers vous pour vos conseils avisés ! :)
> 
> Merci.
> @++
> Fred
> 
> --
> Galette development - http://galette.eu/
> 
> List documentation:
> https://listengine.tuxfamily.org/lists.galette.eu/devel/
> 
> 

--
Galette development - http://galette.eu/

List documentation: https://listengine.tuxfamily.org/lists.galette.eu/devel/


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/