Bonjour, je confirme l'analyse de Philippe Lemaire : MySQL 5.7 exige que les champs utilisés dans ORDER BY soient dans la sélection. J'ai apporté de telles modifications à GRR auquel je contribue activement. Cordialement, Yan Naessens
Le 13/11/19 05:40, LEMAIRE Philippe <lemaire.phili...@lfay.com.vn> a écrit : > > > > > > > Bonjour, > > > > Suite à un problème rencontré par un parent d’élève j’ai découvert un petit > bug qui est lié au passage de MySQL en 5.7 > > > > Le problème : > > Lorsqu’un parent affiche le nouveau carnet de notes de son enfant, celui-ci > apparait comme n’étant rattaché à aucun groupe, par contre avec l’Interface > Classique cela s’affiche correctement. > > Le compte de l’élève et du responsable sont bien configurés > > > > La recherche : > > D’après les logs il y avait un problème au niveau de la requête > $nombre_groupes = mysqli_num_rows($appel_liste_groupes); (ligne 522, fichier > : /cahier_notes/extraction_donnees_releves_notes.php) > > J’ai testé les requêtes sql (ligne 490 et 506) directement dans la base et > effectivement elles se mettaient en erreur. > > Le serveur refuse la requête car les champs présents dans ORDER BY ne sont > pas dans SELECT. > > Effectivement si l’on ajoute les champs du ORDER BY dans SELECT tout > refonctionne correctement > > Visiblement le passage à MySQL 5.7 oblige à ajouter les champs qui se > trouvent dans ORDER BY dans le SELECT :c/ > > > > Résultat (à partir de la ligne 488, fichier : > /cahier_notes/extraction_donnees_releves_notes.php) : > > if ($affiche_categories) { > > // On utilise les valeurs spécifiées pour la classe en question > > $sql="SELECT DISTINCT jgc.id_groupe, jgm.id_matiere matiere, > jgc.categorie_id, jmcc.priority,jgc.priorite,m.nom_complet ". > > "FROM j_eleves_groupes jeg, j_groupes_classes jgc, j_groupes_matieres jgm, > j_matieres_categories_classes jmcc, matieres m " . > > "WHERE ( " . > > "jeg.login = '" . $current_eleve_login[$i] ."' AND " . > > "jgc.id_groupe = jeg.id_groupe AND " . > > "jgc.categorie_id = jmcc.categorie_id AND " . > > "jgc.id_classe = '".$id_classe."' AND " . > > "jgm.id_groupe = jgc.id_groupe AND " . > > "m.matiere = jgm.id_matiere" . > > " AND jgc.id_groupe NOT IN (SELECT id_groupe FROM j_groupes_visibilite WHERE > domaine='cahier_notes' AND visible='n')"; > > > > if($choix_periode!="intervalle") {$sql.=" AND jeg.periode='$periode_num'";} > > > > $sql.=") " . > > "ORDER BY jmcc.priority,jgc.priorite,m.nom_complet"; > > } else { > > $sql="SELECT DISTINCT jgc.id_groupe, jgc.categorie_id, jgc.coef, > jgm.id_matiere matiere, jgc.priorite, jgm.id_matiere " . > > "FROM j_groupes_classes jgc, j_groupes_matieres jgm, j_eleves_groupes jeg " . > > "WHERE ( " . > > "jeg.login = '" . $current_eleve_login[$i] . "' AND " . > > "jgc.id_groupe = jeg.id_groupe AND " . > > "jgc.id_classe = '".$id_classe."' AND " . > > "jgm.id_groupe = jgc.id_groupe" . > > " AND jgc.id_groupe NOT IN (SELECT id_groupe FROM j_groupes_visibilite WHERE > domaine='cahier_notes' AND visible='n')"; > > > > if($choix_periode!="intervalle") {$sql.=" AND jeg.periode='$periode_num'";} > > > > $sql.=") " . > > "ORDER BY jgc.priorite,jgm.id_matiere"; > > } > > > > $appel_liste_groupes = mysqli_query($GLOBALS["mysqli"], $sql); > > $nombre_groupes = mysqli_num_rows($appel_liste_groupes); > > > > Configuration : > > Ubuntu 16.04 > > Mysql 5.7.27 > > > > Conclusion : > > Est il possible d’intégrer cette modif à Gepi et de vérifier si il n’y a pas > d’autres requêtes qui nécessiteraient une adaptation. > > > > D’avance merci > > > > Cordialement > > Philippe Lemaire > > > > > _________________________________________________________________________________ > Documentation Gepi en ligne : http://www.sylogix.org/projects/gepi/wiki > Pour modifier ou r??ilier votre abonnement ??cette liste : > https://lists.sylogix.net/mailman/listinfo/gepi-users _________________________________________________________________________________ Documentation Gepi en ligne : http://www.sylogix.org/projects/gepi/wiki Pour modifier ou rsilier votre abonnement cette liste : https://lists.sylogix.net/mailman/listinfo/gepi-users