Bonjour,

J'apporte une dernier petite retouche a mes codes concernant les carractères avec accent

J'ai mes tables qui sont en utf8 et inteclassement en utf8_general_ci

J'utilise un formulaire afin de mettre un champs à jour dans ma tables échange voir ci-dessous

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
CREATE TABLE IF NOT EXISTS `echange` (
  `echang_id` varchar(6) NOT NULL,
  `echang_observation` longtext NOT NULL,
  `date_jour` varchar(10) NOT NULL,
  `echang_interlocuteur` text NOT NULL,
  PRIMARY KEY (`echang_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Dans le formulaire (un textarea), j'utilise une fonction pour géré les BBcode

Ma fonction de codage
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
22
23
24
25
26
27
 
<?php
function code($document)
{
$document = htmlentities($document, ENT_QUOTES,UTF-8);
//Mise en forme du texte
//gras
$document = preg_replace('`\[g\](.+)\[/g\]`isU', '<strong>$1</strong>', $document); 
//italique
$document = preg_replace('`\[i\](.+)\[/i\]`isU', '<em>$1</em>', $document);
//souligné
$document = preg_replace('`\[s\](.+)\[/s\]`isU', '<u>$1</u>', $document);
//lien
$document = preg_replace('#http://[a-z0-9._/-]+#i', '<a href="$0">$0</a>', $document);
//quote
$document = preg_replace('`\[quote\](.+)\[/quote\]`isU', '<div id="quote">$1</div>', $document);
 
//taille
$document = preg_replace('`\[taille=(.+)\](.+)\[/taille\]`isU', '<span style="font-size:$1px">$2</span>', $document);
 
// Remplacement des sauts de ligne par des <br />
$document = nl2br($document);
 
//On retourne la variable texte
return ($document);
}
?>
fichier de traitement des données pour l'insertion


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
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
<?php
session_start ();
ini_set ("error_reporting", "E_ALL & ~E_NOTICE");
echo "<a href='../index.php'>Retour index</a>";
include('../inc/inc_connexion.php'); 
include ('../inc/fonction.php');
//***********************************************************************
 
if(isset($_POST['numero']) AND $_POST['numero']!= NULL
	AND isset($_POST['observation']) AND $_POST['observation']!= NULL)
	{ 
$numero= $_POST['numero']; 
$observation= code(htmlentities($_POST['observation'])); 
$utilisateur=$_SESSION['pseudo'];


$requete ="INSERT INTO echange values('".$numero."','".$observation."','".date("Y-m-d")."','".$utilisateur."')"; 
 
$req = mysql_query( $requete ) or die(mysql_error());   
  
header('location:../vues/fiche_pdv_complet.php?numero='.$numero.'');
	}
?>
<script>
function bbcode(bbdebut, bbfin)
{
var input = window.document.formulaire.observation;
input.focus();
if(typeof document.selection != 'undefined')
{
var range = document.selection.createRange();
var insText = range.text;
range.text = bbdebut + insText + bbfin;
range = document.selection.createRange();
if (insText.length == 0)
{
range.move('character', -bbfin.length);
}
else
{
range.moveStart('character', bbdebut.length + insText.length + bbfin.length);
}
range.select();
}
else if(typeof input.selectionStart != 'undefined')
{
var start = input.selectionStart;
var end = input.selectionEnd;
var insText = input.value.substring(start, end);
input.value = input.value.substr(0, start) + bbdebut + insText + bbfin + input.value.substr(end);
var pos;
if (insText.length == 0)
{
pos = start + bbdebut.length;
}
else
{
pos = start + bbdebut.length + insText.length + bbfin.length;
}
input.selectionStart = pos;
input.selectionEnd = pos;
}
 
else
{
var pos;
var re = new RegExp('^[0-9]{0,3}$');
while(!re.test(pos))
{
pos = prompt("insertion (0.." + input.value.length + "):", "0");
}
if(pos > input.value.length)
{
pos = input.value.length;
}
var insText = prompt("Veuillez taper le texte");
input.value = input.value.substr(0, pos) + bbdebut + insText + bbfin + input.value.substr(pos);
}
}
function smilies(img)
{
window.document.formulaire.message.value += '' + img + '';
}
</script>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
   <head>
       <title>Gestion des dus</title>
       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<body>

<form method="POST" action="creer_commentaire_societe.php" name="formulaire" accept-charset="UTF-8">
<fieldset><legend>Mise en forme</legend>
<input type="button" id="gras" name="gras" value="Gras" onClick="javascript:bbcode('[g]', '[/g]');return(false)" />
<input type="button" id="italic" name="italic" value="Italic" onClick="javascript:bbcode('', '');return(false)" />
<input type="button" id="souligné" name="souligné" value="Souligné" onClick="javascript:bbcode('', '');return(false)" />
<input type="button" id="taille" name="taille" value="Taille" onclick="javascript:bbcode('[taille=18px]', '[/taille]');return(false)" />
<br/><br/>
<textarea cols="115" rows="10" name="observation"></textarea><br>
<input type="text" name="numero" value="<?php echo $_GET['numero'];?>" size='7'>
   <br />
   <input type="submit" name="submit" value="Envoyer" />
   <input type="reset" name="Effacer" value="Effacer" /></p>
</fieldset>
   </form>
</body>
</html>
Ma page d'affichage du résulta avec mie en forme

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
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
 
<?php
session_start();
ini_set ("error_reporting", "E_ALL & ~E_NOTICE");
 
include('../inc/inc_connexion.php');
 
if(!empty($_GET['numero']))
{
$numero=$_GET['numero'];
 
$sql = "SELECT COUNT(echang_id) as nb_commentaire, echang_id, echang_observation FROM echange WHERE echang_id = $numero";
 
$requete = mysql_query( $sql) or die( "ERREUR MYSQL numéro: ".mysql_errno()."<br>Type de cette erreur: ".mysql_error()."<br>\n" );
 
while( $result = mysql_fetch_assoc( $requete) )
{
//*********************************************************************************************************//
//                Affichage conditionnel du lien Création ou modification des commentaire                  //
//*********************************************************************************************************//
 
 if ($result['nb_commentaire'] ==1)
	{
        echo "<a href='../modele/commentaire_societe.php?numero=$numero'>Mise à jour des commentaires</a>";		
	}
else
	{
		echo "<a href='../modele/creer_commentaire_societe.php?numero=$numero'>Ajouter un premier un commentaire</a>";
	}
 
//********************************************************************************************************//
//récupération avec mysql_fetch_assoc(), et affichage de nos résultats :
 
echo( "<table BORDER=1 BORDERCOLOR=#CCCCCC BGCOLOR=#fffccc CELLSPACING=0 CELLPADDING=1 WIDTH=950 ALIGN=left>\n" );
echo( "<tr>

<td bgcolor='#669999'><div align=\"center\">Commentaire</div></td></tr>" );
 
 
$obs = $result['echang_observation'];
 
echo "<tr>\n" ;
 
echo "<td>".htmlspecialchars_decode($result['echang_observation'])."</td>\n" ;
echo "</tr>\n";
	}
echo "</table><br>\n" ;
	}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
   <head>
       <title>Gestion des dus</title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<body>
</body>
</html>

Résultat obtenu lors de l'insertion en dans a table
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
<em>test des &amp;Atilde;&amp;copy; &amp;Atilde;&amp;nbsp; et &amp;Atilde;&amp;sup1; dans un &amp;Atilde;&amp;sect;a</em>
Résultat lors de l'affichage à l'écran
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
test des é à et ù dans un ça
Malgré des recher sur google j'ai pas pu résoudre ce problème

Je vous remerci de l'aide que vous pourriez m'apporter

Runcafre91