Jump to content

[Résolu] htmlspecialchars() expect parameters 1


Recommended Posts

Bonjour à tous.

Voila je suis en train de créer un petit module et après avoir lutté à me documenter, j'ai suivi le tuto de prestarocket et télécharger le super module d'exemple de jDanse. 

 

Donc, dans mon module, j'arrive à crée du contenu tout se passe à merveille jusque ici, mais lorsque que je veux éditer ce dernier, mon textarea m'affiche ceci 

Warning: htmlspecialchars() expects parameter 1 to be string, array given in /Users/guillaume/Sites/prestashop_156/tools/smarty/plugins/modifier.escape.php on line 58

Dans controller voici le tableau concernant ce textarea

array(
					'type' => 'textarea',
					'label' => $this->l('Contenu:'),
					'name' => 'txt',
					'autoload_rte' => true,
					'size' => 40,
					
					
				)

Avec ou sans tinyMce c'est la même chose.

 

Voici également le code de mon Model

public static $definition = array(
		'table' => 'news',
		'primary' => 'id_news',
		'multilang' => true,
		'fields' => array(
			// Lang fields
			'id_news' => array('type' => self::TYPE_INT, 'validate' => 'isUnsignedInt'),
			'title' => 		array('type' => self::TYPE_STRING, 'lang' => true, 'validate' => 'isGenericName', 'required' => true, 'size' => 64),
			'txt' => 		array('type' => self::TYPE_STRING,'lang' => true),
		),
	);

Donc si quelqu'un à un idée je suis preneur. 

Merci à vous.

 

PS: je suis sous Prestashop 1.5.6

Edited by guigui23 (see edit history)
Link to comment
Share on other sites

J'avais déjà essayé avec TYPE_HTML mais ça ne change rien,

En local j'ai le message, en ligne non.

J'ai remarqué que l'UPDATE se fait bien mais par exemple si je met un <p>TEST</p> dans le tinyMCE (en mode HTML)

dans la base le résultat est sans HTML donc TEST.

 

je comprends pas du tout, le MVC de Prestashop est bien mais on passe plus de temps à chercher de la doc et à débugger qu'autre chose.

Link to comment
Share on other sites

"Bizarrement", en fait non c'est plutôt logique.

 

Dans la definition table, le champ 'txt' étant définit comme un champ multilangue, il faut bien que la définition de ce champ dans les helpers soit elle aussi paramétrée en multilangue.

 

Le fait que le message apparaisse en local et pas en ligne doit - peut-être - venir de la configuration des langues (actives ou non) ?

 

Néanmoins, l'important étant que ça soit résolu et qu'on peut en profiter pour rajouter une couche sur la documentation qui est bien, mais pas encore assez précise (un exemple d'une implémentation de chaque helper avec tous les types de champs + multilangue serait la bienvenue par exemple).

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...