[Réglé] Erreur quand je répond à un MP : Parameter must be an array or an object

Forum de support pour les questions concernant l'utilisation de phpBB 3.2, les problèmes rencontrés lors de manipulations, de configuration du forum ou de personnalisation autres que les Styles ou les Extensions

Modérateur: Equipe

Règles du forum
A lire impérativement : Règlement de phpBB-fr.com

Pensez à effectuer une recherche, la réponse à votre question a de grandes chances d'avoir déjà été donnée.

[Réglé] Erreur quand je répond à un MP : Parameter must be an array or an object

Messagepar Binano » 09 Fév 2018 à 15:21

Bonjour à tous,

le debug m'affiche ce message d'erreur quand je répond à un MP :

[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions_messenger.php on line 506: count(): Parameter must be an array or an object that implements Countable


A la ligne 506 environ du fichier functions_messenger, il y a ceci, je n'ai rien touché c'est d'origine :

Code: Tout sélectionner
		/**
		* Event to modify email header entries
		*
		* @event core.modify_email_headers
		* @var	array	headers	Array containing email header entries
		* @since 3.1.11-RC1
		*/
		$vars = array('headers');
		extract($phpbb_dispatcher->trigger_event('core.modify_email_headers', compact($vars)));

		if (count($this->extra_headers))
		{
			$headers = array_merge($headers, $this->extra_headers);
		}

		return $headers;
	}


Pour être plus précis, la ligne 506 est if (count($this->extra_headers))

De quoi peut venir ce petit bug à votre avis ???
Modifié en dernier par Binano le 09 Fév 2018 à 17:13, modifié 1 fois.
Avatar de l’utilisateur
Binano
Roi des posts
Roi des posts
 
Messages: 619
Enregistré le: 02 Aoû 2005 à 09:36

Re: Erreur quand je répond à un MP : Parameter must be an array or an object

Messagepar cocooncrash » 09 Fév 2018 à 15:31

Bonjour,

testes ceci.

Edites le fichier core.php :
Code: Tout sélectionner
/**
     * Returns the length of a variable.
     *
     * @param Twig_Environment $env
     * @param mixed            $thing A variable
     *
     * @return int The length of the value
     */
    function twig_length_filter(Twig_Environment $env, $thing)
    {
        if (is_scalar($thing)) {
            return mb_strlen($thing, $env->getCharset());
        }

        if (is_object($thing) && method_exists($thing, '__toString') && !$thing instanceof \Countable) {
            return mb_strlen((string) $thing, $env->getCharset());
        }

        return count($thing);
    }


a remplacer par :
Code: Tout sélectionner
/**
     * Returns the length of a variable.
     *
     * @param Twig_Environment $env
     * @param mixed            $thing A variable
     *
     * @return int The length of the value
     */
    function twig_length_filter(Twig_Environment $env, $thing)
    {
        if (null === $thing) {
            return 0;
        }
        if (is_scalar($thing)) {
            return mb_strlen($thing, $env->getCharset());
        }
        if (is_object($thing) && method_exists($thing, '__toString') && !$thing instanceof \Countable) {
            return mb_strlen((string) $thing, $env->getCharset());
        }
        if ($thing instanceof \Countable || is_array($thing)) {
            return count($thing);
        }
        return 1;
    }
decouvrez l'aide complete : ICI
découvrez les règles : La_bas

Pensez a ajouter le tag [réglé] en modifiant votre premier message s'il est résolu. Merci :wink:
Avatar de l’utilisateur
cocooncrash
Resp. des modérateurs
Resp. des modérateurs
 
Messages: 7649
Enregistré le: 07 Jan 2008 à 09:29
Localisation: dans un bocal en compagnie de nemo!!

Re: Erreur quand je répond à un MP : Parameter must be an array or an object

Messagepar Sylveretour » 09 Fév 2018 à 16:16

Bonjour,

Encore un problème dû à tes headers et fastcgi sur ton serveur !
Bizarre que toi seul ai ce genre de problèmes et aucun autre forum phpBB :shock:
Avatar de l’utilisateur
Sylveretour
Maître-posteur
Maître-posteur
 
Messages: 443
Enregistré le: 21 Nov 2017 à 19:24
Localisation: West Coast

Re: Erreur quand je répond à un MP : Parameter must be an array or an object

Messagepar Binano » 09 Fév 2018 à 17:04

@Sylveretour, ah mince, tu crois que ça vient de là aussi :shock:

Cependant, je ne pense pas être le seul en fait, à mon avis il y en a d'autres mais qui n'ont jamais activé l'option PHP-FPM d'OVH et qui n'ont jamais contrôlé leurs logs :lol: voici un autre cas de quelqu'un qui a des double headers lorsque qu'il utilise PHP en mode FPM app.engine=php : https://forums.galette.eu/viewtopic.php?pid=41#p41

...

...

Bon, je viens de faire le test, ça ne vient pas de l'activation de PHP-FPM cette fois-ci car ça ne change rien, il y a toujours l'erreur même en désactivant FPM. En fait j'ai cette ligne d'erreur qui s'affiche uniquement sur 1 forum sur les 7 que je possède. Ce n'est pas une erreur pénalisante, les messages privées passent bien mais c'est tout de même étrange.

Edit : Je suis en version php 7.2 Je vais revenir en 7.1 https://tracker.phpbb.com/browse/PHPBB3-15507
Edit 2 : Ok c'est réglé, c'est une erreur liée à php 7.2. Je suis repassé à 7.1, plus d'erreur 8)
Avatar de l’utilisateur
Binano
Roi des posts
Roi des posts
 
Messages: 619
Enregistré le: 02 Aoû 2005 à 09:36

Re: Erreur quand je répond à un MP : Parameter must be an array or an object

Messagepar Sylveretour » 09 Fév 2018 à 17:52

C'est un problème d'en-têtes de mail car quand tu envoie un mp, le membre dans la foulée est averti par mail si cette option est activée.
Regarde bien la partie de code que tu donne, on voit: * Event to modify email header entries
Donc, s'il faut que tu modifie tout le core de phpBB, ce ne seront que bouts de pansements partout :D
Avatar de l’utilisateur
Sylveretour
Maître-posteur
Maître-posteur
 
Messages: 443
Enregistré le: 21 Nov 2017 à 19:24
Localisation: West Coast

Re: Erreur quand je répond à un MP : Parameter must be an array or an object

Messagepar Binano » 09 Fév 2018 à 18:10

Oui, je suis d'accord avec toi, je ne vais pas tout modifier. Je me contente donc de désactiver php 7.2
En php 7.1, il n'y a pas d'erreur. Comme vu plus haut, le problème semble être connu sous phpBB 3.2.2 et sera résolu dans la prochaine version : https://tracker.phpbb.com/browse/PHPBB3-15507

Problème réglé
Avatar de l’utilisateur
Binano
Roi des posts
Roi des posts
 
Messages: 619
Enregistré le: 02 Aoû 2005 à 09:36


Retourner vers Utilisation

 


  • Articles en relation
    Réponses
    Vues
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité