Bonjour,
J'ai un système qui demande à un utilisateur de rentrer des adresses emails dans un textarea en les séparant par des sauts de lignes.
Les emails sont ensuite concaténés dans une variables
Ensuite on crypte la variable et on la met dans la BDD :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 foreach($emails as $email) { $email=trim($email); if(filter_var($email, FILTER_VALIDATE_EMAIL)) { $emailDejaEnvoyes.=utf8_encode($email."<br>\n");
On affiche ensuite la chaine en la décryptant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 /* Charge un chiffrement */ $td = mcrypt_module_open('rijndael-128', '', 'ofb', ''); /* Crée le VI et détermine la taille de la clé */ $iv=$req['iv']; $ks = mcrypt_enc_get_key_size($td); /* Crée la clé */ $key = substr(md5(getKey()), 0, $ks); /* Initialise le module de chiffrement pour le déchiffrement */ @mcrypt_generic_init($td, $key, $iv); /* Déchiffre les données */ $emailDejaEnvoyes=@mcrypt_generic($td, $emailDejaEnvoyes); //UPDATE de la BDD sur laquelle on a fait un mysql_query("SET NAMES 'utf8'");
Mon soucis est que si j'entre par exemple
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 /* Charge un chiffrement */ $td = mcrypt_module_open('rijndael-128', '', 'ofb', ''); /* Crée le VI et détermine la taille de la clé */ $iv=$req['iv']; $ks = mcrypt_enc_get_key_size($td); /* Crée la clé */ $key = substr(md5(getKey()), 0, $ks); /* Initialise le module de chiffrement pour le déchiffrement */ @mcrypt_generic_init($td, $key, $iv); /* Déchiffre les données */ $emailDejaEnvoyes=@mdecrypt_generic($td, $reqEmail['emailsDejaEnvoyes']); /* Libère le gestionnaire de déchiffrement, et ferme le module */ @mcrypt_generic_deinit($td); mcrypt_module_close($td); echo utf8_decode($emailDejaEnvoyes);
email1@gmail.com
email2@gmail.com
ça m'affiche
email1@gmail.com
email2j9?#?6Bln?
Au dirai que ça bug au niveau du 2e @
Partager