Jump to content

(RESOLU) Javascript dans Description d'une fiche produit


Recommended Posts

Bonjour, 

 

N'ayant pas trouvé la réponse sur le forum, je me permets de poster un nouveau topic. Je souhaite intégrer le code ci dessous dans une description d'un produit que je vend sur ma boutique. Or quand je le rentre, cela ne fonctionne pas et m'indique " Le champ description (Français (French)) est invalide. ".

<form> 

<input type="text" id="nbhl" placeholder="Nombre de m2 à traiter" autofocus/> 
<input type="button" value="Calculer" onclick="javascript:document.getElementById('resultat').innerHTML=document.getElementById('nbhl').value/30+' L d\'anti-mousse.';"/> 
<p id="resultat"></p> 
</form> 

Avez vous une idée de comment faire pour que cela fonctionne ?

 

Merci d'avance.

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

Les scripts sont bloqué c'est normal.

 

Dans la classe Validate.php, vous avez quelque part une fonction isCleanHtml : 

public static function isCleanHtml($html, $allow_iframe = false)
{
	$events = 'onmousedown|onmousemove|onmmouseup|onmouseover|onmouseout|onload|onunload|onfocus|onblur|onchange';
	$events .= '|onsubmit|ondblclick|onclick|onkeydown|onkeyup|onkeypress|onmouseenter|onmouseleave|onerror|onselect|onreset|onabort|ondragdrop|onresize|onactivate|onafterprint|onmoveend';
	$events .= '|onafterupdate|onbeforeactivate|onbeforecopy|onbeforecut|onbeforedeactivate|onbeforeeditfocus|onbeforepaste|onbeforeprint|onbeforeunload|onbeforeupdate|onmove';
	$events .= '|onbounce|oncellchange|oncontextmenu|oncontrolselect|oncopy|oncut|ondataavailable|ondatasetchanged|ondatasetcomplete|ondeactivate|ondrag|ondragend|ondragenter|onmousewheel';
	$events .= '|ondragleave|ondragover|ondragstart|ondrop|onerrorupdate|onfilterchange|onfinish|onfocusin|onfocusout|onhashchange|onhelp|oninput|onlosecapture|onmessage|onmouseup|onmovestart';
	$events .= '|onoffline|ononline|onpaste|onpropertychange|onreadystatechange|onresizeend|onresizestart|onrowenter|onrowexit|onrowsdelete|onrowsinserted|onscroll|onsearch|onselectionchange';
	$events .= '|onselectstart|onstart|onstop';

	if (preg_match('/<[\s]*script/ims', $html) || preg_match('/('.$events.')[\s]*=/ims', $html) || preg_match('/.*script\:/ims', $html))
			return false;

	if (!$allow_iframe && preg_match('/<[\s]*(i?frame|form|input|embed|object)/ims', $html))
		return false;

	return true;
}

Le premier preg_match vérifie la présence de balise <script> dans vos description. Et si il en trouve, boooom : return false! Votre description ne passe pas.

Link to comment
Share on other sites

Malheureusement, je ne sais pas faire d'override, donc dans un premier temps je vais juste modifier le fichier validate.php, et après je fais essayer de chercher pour comprendre comment faire un override de la classe Validate

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