Version 3.4.0 et PHP 7.

  • cperri
  • Topic Author
  • New Member
  • New Member
More
4 years 5 months ago - 4 years 5 months ago #2307 by cperri
Version 3.4.0 et PHP 7. was created by cperri
Bonjour
Je souhaite savoir si la version GRR 3.4.0b est compatible avec la version 7 de PHP?
Je rencontre actuellement un problème depuis une MAJ de PHP avec l'identification CAS utilisation impossible de GRR pour les nouveaux utilisateurs.
Pouvez vous me dire si la version 3.4.1 de GRR est disponible et où je pourrais la télécharger si je souhaite faire une MAJ?

merci à vous.

Claude
Last edit: 4 years 5 months ago by cperri.

Please Log in or Create an account to join the conversation.

  • Yan
  • Developpeur GRR
  • Developpeur GRR
More
4 years 5 months ago #2309 by Yan
Replied by Yan on topic Version 3.4.0 et PHP 7.
Bonjour,
il y a vraisemblablement des erreurs php7 avec la 3.4.0.
Les versions de GRR sont disponibles sur le dépôt Github :
github.com/JeromeDevome/GRR/releases ou directement sur la branche github.com/JeromeDevome/GRR/tree/GRR-3.4.1 pour bénéficier des derniers correctifs.
Cordialement,
YN

Please Log in or Create an account to join the conversation.

  • cperri
  • Topic Author
  • New Member
  • New Member
More
4 years 5 months ago - 4 years 5 months ago #2310 by cperri
Replied by cperri on topic Version 3.4.0 et PHP 7.
Merci Yan pour cette réponse rapide.
Claude
Last edit: 4 years 5 months ago by Yan.

Please Log in or Create an account to join the conversation.

  • fanch
  • New Member
  • New Member
More
3 years 10 months ago #2780 by fanch
Replied by fanch on topic Version 3.4.0 et PHP 7.
Bonjour,
L'installation de la version 3.4.0b sur un serveur local (Lamp/Linux) s'est déroulée sans problème. Lors de l'installation sur un serveur distant, une message d'erreur est apparu concernant le fichier mrbs_sql.inc.php, à propos d'un '[' dans la fonction get_day_of_month.
Il semble que la vesion php du serveur rencontrait des difficultés avec le fichier et notamment les tableaux. Le problème a été résolu en remplaçant les tableaux déclarés en [ ] par array(...).
Voici la version modifiée qui a permis de faire fonctionner correctement Grr.

/** get_day_of_month
* renvoie le time stamp du ($rep_month_abs1)-ème jour de nom ($rep_month_abs2)
* dans le mois suivant le jour de timestamp $time
* renvoie un tableau [$valide,$temps]
* où $valide est un booléen indiquant si $temps est un timestamp accepté
*/
function get_day_of_month($time, $rep_month_abs1, $rep_month_abs2)
{
$days = array('Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday');
$rep = array('first', 'second', 'third', 'fourth', 'fifth', 'last');
$time = mktime(0,0,0,date("m",$time)+1,1,date("Y",$time)); // avance d'un mois
if (in_array($rep_month_abs1,array(0,1,2,3,5))){
$str = $rep[$rep_month_abs1].' '.$days[$rep_month_abs2 - 1].' of '.date("F", $time).' '.date("Y", $time);
return array(TRUE,strtotime($str));
}
if ($rep_month_abs1 == 4){
$str = $rep[4].' '.$days[$rep_month_abs2 - 1].' of '.date("F", $time).' '.date("Y", $time);
$cinq = strtotime($str,$time);
$str = 'last '.$days[$rep_month_abs2 - 1].' of '.date("F", $time).' '.date("Y", $time);
$last = strtotime($str,$time);
if ($cinq == $last) return array(TRUE,$cinq);
else return array(FALSE,$last);
}
}

Please Log in or Create an account to join the conversation.

  • Yan
  • Developpeur GRR
  • Developpeur GRR
More
3 years 10 months ago #2785 by Yan
Replied by Yan on topic Version 3.4.0 et PHP 7.
Bonjour,
merci pour votre signalement.
Cependant, il serait bien de mettre votre GRR à jour.
github.com/JeromeDevome/GRR/releases
Pouvez-vous préciser le contexte de votre installation ? (Donnez le contenu de la zone à copier de la page de mise à jour.)
Cordialement,
YN

Please Log in or Create an account to join the conversation.

  • fanch
  • New Member
  • New Member
More
3 years 10 months ago #2788 by fanch
Replied by fanch on topic Version 3.4.0 et PHP 7.
Il semblerait que le serveur utilise PHP 5.3.
Il suffit de remplacer la fonction get_day_of_month par le contenu du message précédent. Elle se trouve dans le fichier mrbs_sql.inc.php situé dans le dossier include.

Please Log in or Create an account to join the conversation.

  • fanch
  • New Member
  • New Member
More
3 years 10 months ago #2789 by fanch
Replied by fanch on topic Version 3.4.0 et PHP 7.
remplacer
if (in_array($rep_month_abs1,[0,1,2,3,5]))
par
if (in_array($rep_month_abs1,array(0,1,2,3,5))){
puis
return [TRUE,strtotime($str)];
par
return array(TRUE,strtotime($str));
et enfin
else return [FALSE,$last];
par
return array(FALSE,$last);

Please Log in or Create an account to join the conversation.

  • Yan
  • Developpeur GRR
  • Developpeur GRR
More
3 years 10 months ago #2790 by Yan
Replied by Yan on topic Version 3.4.0 et PHP 7.
La syntaxe directe [1,2,3] au lieu de array(1,2,3) est acceptée à partir de php 5.4, ce qui explique vos erreurs.
Cependant, je ne garantis pas le bon fonctionnement de GRR avec une aussi vieille version de php, qui n'est en outre plus suivie en termes de mises à jour, notamment de sécurité.
Un hébergement responsable devrait être en php 7.
Cordialement,
YN

Please Log in or Create an account to join the conversation.

Moderators: Yan