Jump to content

Message d'erreur suite Mise à Jour Paypal


Recommended Posts

Bonjour,

 

Je viens de faire la mise à jour du module Paypal et quand j'enregistre mes infos je tombe sur une page d'erreur :

 

[PrestaShopException]

Property Configuration->name length (38) must be between 0 and 32
at line 837 in file classes/ObjectModel.php

831. 832. 			$message = $this->validateField($field, $this->$field);833. 			if ($message !== true)834. 			{835. 				if ($die)836. 					throw new PrestaShopException($message);837. 				return $error_return ? $message : false;838. 			}839. 		}840. 841. 		return true;

 

Que faire ?

Link to comment
Share on other sites

J'ai modifié le configuration.php comme décrit mais j'ai toujours un message d'erreur quand je veux enregistrer la configuration du module :

 

 

[PrestaShopException]

Property Configuration->0 is empty
at line 837 in file classes/ObjectModel.php

831. 832. 			$message = $this->validateField($field, $this->$field);833. 			if ($message !== true)834. 			{835. 				if ($die)836. 					throw new PrestaShopException($message);837. 				return $error_return ? $message : false;838. 			}839. 		}840. 841. 		return true;
Link to comment
Share on other sites

Il suffit de surcharger la classe "configuration" et de changer la valeur dans celle-ci et dans la base de données.

Tu n'auras plus d'erreur après cela.

 

Si tu ne fais pas cela le module fonctionne mais le paramètre "PAYPAL_IN_CONTEXT_CHECKOUT_MERCHANT_ID" ne sera pas enregistré.

  • Like 1
Link to comment
Share on other sites

Pour la surcharge de la classe "configuration" sur une version 1.5 :
 

  • Tu copies le fichier se trouvant dans "classes/Configuration.php".
  • Tu modifies la copie en supprimant tout ce qui est inutile.
  • Tu remplaces "ConfigurationCore" par "Configuration" et "ObjectModel" par "ConfigurationCore".
  • Tu remplaces la taille du champ "name" par 254.
  • Tu places le nouveau fichier dans le répertoire "override/classes"

Les étapes 2 à 4 donne le code suivant :

<?php

class Configuration extends ConfigurationCore
{
	/**
	 * @see ObjectModel::$definition
	 */
	public static $definition = array(
		'table' => 'configuration',
		'primary' => 'id_configuration',
		'multilang' => true,
		'fields' => array(
			'name' => 			array('type' => self::TYPE_STRING, 'validate' => 'isConfigName', 'required' => true, 'size' => 254),
			'id_shop_group' => 	array('type' => self::TYPE_NOTHING, 'validate' => 'isUnsignedId'),
			'id_shop' => 		array('type' => self::TYPE_NOTHING, 'validate' => 'isUnsignedId'),
			'value' => 			array('type' => self::TYPE_STRING),
			'date_add' => 		array('type' => self::TYPE_DATE, 'validate' => 'isDate'),
			'date_upd' => 		array('type' => self::TYPE_DATE, 'validate' => 'isDate'),
		),
	);
}

Dans ta base de données tu ouvres la structure de la table "prefixe_configuration" et tu change la taille du champ "name" par 254.

 

Si jamais tu as un soucis n'hésite pas. ;)

  • Like 1
Link to comment
Share on other sites

Hello

 

 

J'ai également une page d'erreur après avoir fait la MAJ du module Product Review.

 

Je n'ai plus accès à mes autres modules, j'ai une page d'erreur qui vient.

 

J'ai supprimé ce module dans mon CPANEL, mais la page d'erreur reste. Que faire ?

 

Lors de votre problème aviez-vous accès à vos autres modules ??

Link to comment
Share on other sites

Bonjour Kali,

 

J'avais toujours accès aux autres modules.

 

Pouvez-vous joindre une capture d'écran de l'erreur ?

Vous pouvez aussi activer le mode "DEV" dans le fichier "defines.inc.php" qui se trouve dans le répertoire "config", cela permettra d'afficher les erreurs php et vous aidera peut-être un peu plus.

 

Pour activer le mode "DEV" changer la ligne suivante :

define('_PS_MODE_DEV_', false);

par

define('_PS_MODE_DEV_', true);

Note : n'oubliez pas de remettre la valeur à false une fois terminé.

Link to comment
Share on other sites

Pour info le message  est toujours là avec la V3.10.1.

 

Correction faite une fois l'override de DJWebCreator mise en place (pour info j'ai pas trouvé prefixe_configuration dans la base de données mais ça fonctionne quand même après sans cette petite modification...).

Link to comment
Share on other sites

Etrange que le message soit toujours présent, le nom de la variable qui pose problème étant raccourci cela devrait fonctionné. Il doit y avoir autre chose.

 

Désolé, Je n'ai peut-être pas été assez clair dans mon message. Il faut remplacer "prefixe" par le préfixe choisi à l'installation (je ne connais pas le votre), par défaut c'est "ps", ce qui donne "ps_configuration" si vous ne l'avez pas modifié.

 

Il faut impérativement faire la modification dans la base de données, sinon ça ne fonctionne pas vraiment, certes le message n'est plus là grâce à l'override, mais l'enregistrement ne se fait pas quand même car dans la base de données le champ est toujours limité.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...