Bonjour,

j'ai un ptit souci... Je travaille avec un charset : utf8

Je reçois des données accentuées issues d'un formulaire. Pour certains champs de ma BDD, je souhaite convertir mes données en majuscules non accentuées. J'utilise le code suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
$data[$i] = $_POST[$column[$i]];
		if($column[$i]=='nom' || $column[$i]= 'prenom' || $column[$i]=='ville') {
			$data[$i] = strtoupper($data[$i]);
			$data[$i] = strtr($data[$i], 
			'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 
			'AAAAAACEEEEIIIIOOOOOUUUUYAAAAAACEEEEIIIIOOOOOOUUUUYY');
			}
		$data[$i] = utf8_decode($data[$i]);
Seulement si je rentre 'àtà', il m'insert 'YYTYY'. Autrement dit, la conversion à bien lieu pour le 't' mais pas pour la 'à'.
Si j'envlève les lilgnes de code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
$data[$i] = strtr($data[$i], 
			'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 
			'AAAAAACEEEEIIIIOOOOOUUUUYAAAAAACEEEEIIIIOOOOOOUUUUYY');
alors il m'insert 'éTé' ...

Pourtant ce petit bout de code semble correct...

Si vous avez une idée !