Bonjour a tous !
Je viens de m'inscrire sur le forum car j'ai un problème sur mon code php que je n'arrive pas a comprendre/régler.
Donc voila mon problème :
J'ai une page ou je reçois les résultats d'un formulaire. Les résultat reçu je souhaite les envoyer a une fonction qui va supprimer tout les caractère spéciaux en les remplaçant pas des caractère simple ex : "é" devient 'e'. Mon problème est que quand j'envoie mes données a ma fonction, ma fonction retourne rien du tout, cependant ma fonction marche correctement. Je vais vous mettre un bout de code pour vous expliquer plus clairement :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 <?php require 'Cv.class.php'; require 'CvManager.class.php'; $db = new PDO('mysql:host=localhost;dbname=test', '*******', '****'); $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING); $cvmanager = new CvManager($db); echo $_POST['prenom']; // affiche 'ééé'; echo $_POST['nom']; // affiche 'ààà'; $toto = 'ééééàéàààààà'; echo $toto // Affiche des case noir avec des point d'interrogation comme si il y a un problème d'encodage. echo $cvmanager->filter($_POST['prenom']); // j'envoie a ma fonction et j'affiche le résultat. Or rien ne s'affiche echo $cvmanager->filter($_POST['nom']); // j'envoie a ma fonction et j'affiche le résultat. Or rien ne 'affiche echo $cvmanager->filter($toto); // Et alors la j'envoie ma variable $toto a la fonction et l'echo m'affiche 'eeeeaeaaaaaa'; ?>
je vous met ici le code de ma fonction filter :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 public function filter($in) { $in = strtolower($in); $search = array('@[éèêë]@i','@[àâä]@i','@[îï]@i','@[ûùü]@i','@[ôö]@i','@[ç]@i','@[ ]@i','@[^a-zA-Z0-9_]@'); $replace = array ('e','a','i','u','o','c','_',''); return preg_replace($search, $replace, $in); }
Donc je ne comprend pas pourquoi ma fonction ne marche pas lorsque je lui envoie des variable issu d'un formulaire mais que tout fonctionne correctement lorsque je déclare une variable et l'envoie a ma fonction. Si une personne sait d'où viens le problème sa serait sympa de m'aider car sa fait un moment que je galère decu (j'espère avoir été clair)
Partager