Bonjour à toutes et à tous,
Après avoir parcourus énormément de site et de forum, la réponse à ma question est toujours différentes suivant la communauté interrogé et j'ai donc décidé de poser directement ma question ici afin de trouver enfin une réponse clair et concise à mon problème ^^
Mon projet est basé sur une architecture MVC. Donc d'une manière très simplifié voici comment je récupère et j'affiche les données de ma base de données.
Formulaire :
Code html : Sélectionner tout - Visualiser dans une fenêtre à part <input type='text' name='id_toto' />
Controllers :
Models :
Code : Sélectionner tout - Visualiser dans une fenêtre à part $id_client = addslashes($_POST['id_toto'])
Controllers :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 public function getInfoClient($id_client){ $requete = $this->getDb()->prepare(" SELECT * FROM client WHERE id = :id "); $requete->bindValue(':id', $id_client); $requete->execute(); return $requete->fetch(PDO::FETCH_ASSOC); }
Donc ma variable $donnees contient la valeur de retour de ma fonction getInfoClient mentionné dans le model plus haut.
Code : Sélectionner tout - Visualiser dans une fenêtre à part $donnees_client = getInfoClient($id_client)
Ensuite j'envoie ces données à ma vue.
Vue :
Voici les informations du client :
Donc mon problème vient de mon echo $donnees.
Code : Sélectionner tout - Visualiser dans une fenêtre à part echo $donnees; //Oui c'est un tableau je peux pas faire de echo mais c'est juste pour le principe de comprendre ^^
Dois-je faire :
Le fait de mettre addslashes lors de la recupération de mon formulaire est utile?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 - echo $donnees - echo htmlentities(stripslashes($donnees), ENT_QUOTES, "UTF-8"); // Déjà essayé mais du coup au lieu de m'afficher les caractères proprement ça me met &45f; etc.... ^^ hôtel devient h&;4gtel par exemple - echo htmlspecialchar($donnees)
Je me pose toutes ces questions car par exemple, si dans mon formulaire un mec met dans l'input => '<script>alert('Cool je fais une alerte en plein milieu de ta page')</script>' au lieu d'écrire son nom et que moi je fais un echo de tout ça, je vais avoir une jolie alert dans ma page...
Voilà mon problème je ne sais pas trop où et à quel moment sécuriser tel ou tel choses.
Merci beaucoup![]()








Répondre avec citation






Partager