Bonsoir,
j'ai deux petites questions dont je cherche une reponse depuis un certain temps...

la premiere, je peux sécuriser ma variable $this->data dans cake php parce que si j'y met du html/javascript, le code est interprété et c'est pas tres bon tout ca ^^

et la seconde, comment puis-je faire pour que dans mes textarea, mes appuis sur la touche "entrée" soit interprétés quand j'affiche le résultat ? c'est à dire que quand je fais "entrée", cake applique la fonction nl2br aux variables $this->data qui en auraient besoin

6 réponses


antittrust
Réponse acceptée

pour ta 1er question tu peut aller faire un tour par la http://book.cakephp.org/fr/view/1183/Data-Sanitization ou bien dans le tuto sur les commentaires dans la section tutoriel du site de mémoire c'est celui la qui traite du sujet.

Flohw
Auteur
Réponse acceptée

trouvé, pour les suivant :)

mais un derniere question, les fonction after et before et tout ca, c'est a moi de les créer ?

Trouvé aussi avec le tuto sur les commentaires, il faut le mettre dans le modele concerné

merci pour le coup de main ;)

Flohw
Auteur

merci, effectivement, j'avais trouvé Sanitize mais je l'avais mal comprise... y a-t-il moyen de faire ceci de manière générique ? c'est a dire pour n'importe quels tableaux de $this->data ?

ma deuxième question est toujours non résolue :)

Y a peut être moyen de bidouiller quelque chose depuis l'app_controller genre:

dans l'app_controller:

function beforeSave(){
app::import('Sanitize');
$data = Sanitize::html($data);
return true;
}

et dans ton controller

$data = $this->data'ta']'table']

Par contre je dit ca comme ca j'ai absolument pas tester mais en creusant de ce coter la je pense qu'il doit être possible de faire qq chose qui marche et qui est pas trop crade sans avoir a réécrire tout dans tout tes model.

Flohw
Auteur

j'ai réussi, seul problème, si j'ai un tableau dans mon $this->data, ca marche plus, je cherche un moyen ^^
mais j'ai un soucis qui est apparu : quand j'edite un article, j'ai en texte ce qui est dans la bdd, j'ai donc les <> du coup les '&' se transforment en & lorsque je réédite... je cherche je cherche...

EDIT : Probleme du array dans le array résolu, j'ai mis un condition qui verifie si la variable n'est pas un tableau, on fait la suite

pour ton nouveau problème va fouiner du coter du forum officiel y'en a surement qui ont déjà poser la question.