Bonjour à tous
J'ouvre ce sujet (très classique je l'avoue) faute d'avoir pu résoudre mon souci.
Je gère de A à Z un site pour mon association. Jusqu'à présent tout se passait très bien jusqu'à ce que a ami qui hébergait notre site chez son hébergeur (il a un site marchand), décide de lancer un chantier de changement d'hébergeur. Le socle technique a évolué (machine et très probablement les composants logiciels, le HTML, le PHP etc...). Résultat : tous les caractères accentués stockés dans ma BDD (gérée sous PHPMYAdmin), sont restitués avec un problème d'encodage dans les différents navigateurs.
Tant qu'on ne pourra régler mon problème on ne pourra basculer sur le nouvel hébergeur. Sur l'actuel je n'ai aucun souci
Un exemple (ne tenez pas compte du fond/texte

):
Une vingtaine de membres ont brav�s le brouillard pour d�guster le vin chaud de notre druide.
Toutes les pages que j'ai développé sont bien encodées en UTF8 (vérifié sous Notepad++).
Le transfert FTP de ces pages à été fait en binaire.
Il n'est pas exclu toutefois que le contenu (code HTML) de mes pages ne respectent pas les standard du HTML5 que je ne suis pas certain de maitriser.
Exemple :
Dans la BDD (table "message") j'ai :
<b>19/02/2017</b> : <p>
"Ravalement" en profondeur du site internet du club + changement de l'hébergement du site.
Résultat dans le navigateur :
19/02/2017 :
"Ravalement" en profondeur du site internet du club + changement de l'h�bergement du site.
La page concernée (vous pouvez vous focaliser sur le code situé au début et qui gère le SELECT à la BDD sur la table concernée "message" ==> $reponse = mysqli_query($connect,"SELECT * FROM message");
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
</head>
<div id="corp">
<?php
include 'conf_inc.php';
$connect = mysqli_connect($host,$login,$pass,$base);
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
exit();
}?>
<table width="100%">
<tr valign="top">
<td>
<table>
<tr>
<td bgcolor=#C1BA9D style="color:#645E5E"><?php
$reponse = mysqli_query($connect,"SELECT * FROM message");
while ($donnees = mysqli_fetch_array($reponse,MYSQLI_ASSOC) )
{?>
<marquee direction=up scrollamount=4>
<?php echo $donnees['texte'];?></marquee><?php
}?>
</td>
</tr>
<tr>
<td rowspan="3"><?php
/*
Principe de ce petit script :
On charge dans un tableau les noms de fichiers présent dans le répertoire d'image
mais en les prefixant par leur date de modification (avec un séparateur "@")
On trie ensuite ce tableau en ordre descendant afin de bénéficier des images les plus récentes
en premier.
Ensuite on dépile ce même tableau trié, mais en découpant la variable(date+nom de fichier) afin de ne
conserver que le nom de fichier.
ex : planeurdeFrancis.JPG
On peut ainsi afficher via la balise <img> l'image en question en bouclant sur la table.
*/
$arr = array();
$folder = './img/Accueil/';
$fichier = scandir($folder);
$i++;
foreach ($fichier as $key => $value)
{
if ($value != '.' && $value != '..')
{
$chemcomplet = $folder.$value;
$dat = date("YmdHis", filemtime($chemcomplet));
$arr[$i] = $dat."@".$value;
$i++;
}
}
arsort($arr);
/* print_r($arr); */
foreach ($arr as $nomfichier)
{
if ($nomfichier != '.' && $nomfichier != '..')
{
$findme = "@";
$pos = strpos($nomfichier, $findme);
$rest = substr($nomfichier, $pos+1);?>
<img style="z-index:0; width: 300px;" src="<?php echo $folder.'/'.$rest?>" ><?php
}
}?>
</td>
</tr>
</table>
</td>
<td width="100%">
<table id="cadre" cellspacing="0" cellpadding="0">
<tr>
<td id="csg"></td>
<td id="sup"></td>
<td id="csd"></td>
</tr>
<tr>
<td id="gche"></td>
<td id="ctre">
<table border = "0" bgcolor="#C1BA9D" align=CENTER>
<tr>
<td width="13%" align=CENTER><?php
$reponse = mysqli_query($connect,"SELECT * FROM flash where id = '1'");
while ($donnees = mysqli_fetch_array($reponse,MYSQLI_ASSOC))
{
if (empty($donnees['url']))
{?>
<font size=1><?php echo $donnees['info']; ?></font> <?php
}
else
{
?><b style='color: #645E5E'><?php echo $donnees['info']?></b>
<a href="<?php echo $donnees['url'];?>" target="_blank"><img src=<?php echo $donnees['repertoire'];?>/<?php echo $donnees['fichier'];?> width="<?php echo $donnees['width'];?>" height="<?php echo $donnees['height'];?>">
<?php
}
}?>
</td>
<td width="1%" bgcolor=#E2E1CD></td>
<td width="13%" ALIGN=CENTER><?php
$reponse = mysqli_query($connect,"SELECT * FROM flash where id = '2'");
while ($donnees = mysqli_fetch_array($reponse,MYSQLI_ASSOC) )
{
if (empty($donnees['url']))
{
?>
<font size=1><?php echo $donnees['info']; ?></font> <?php
}
else
{
?><b style='color: #645E5E'><?php echo $donnees['info']?></b>
<a href="<?php echo $donnees['url']; ?>" target="_blank"><img src="<?php echo $donnees['repertoire'];?>/<?php echo $donnees['fichier'];?>" width="<?php echo $donnees['width'];?>" height="<?php echo $donnees['height'];?>">
<?php
}
}?>
</td>
<td width="1%" bgcolor=#E2E1CD></td>
<td width="13%" ALIGN=CENTER>
<?php
$reponse = mysqli_query($connect,"SELECT * FROM flash where id = '3'");
while ($donnees = mysqli_fetch_array($reponse,MYSQLI_ASSOC) )
{
if (empty($donnees['url']))
{
?>
<font size=1><?php echo $donnees['info']; ?></font>
<?php
}
else
{
?><b style='color: #645E5E'><?php echo $donnees['info']?></b>
<a href="<?php echo $donnees['url']; ?>" target="_blank"><img src="<?php echo $donnees['repertoire'];?>/<?php echo $donnees['fichier'];?>" width="<?php echo $donnees['width'];?>" height="<?php echo $donnees['height'];?>">
<?php
}
}?>
</td>
<td width="1%" bgcolor=#E2E1CD></td>
<td width="13%" ALIGN=CENTER>
<?php
$reponse = mysqli_query($connect,"SELECT * FROM flash where id = '4'");
while ($donnees = mysqli_fetch_array($reponse,MYSQLI_ASSOC) )
{
if (empty($donnees['url']))
{
?>
<font size=1><?php echo $donnees['info']; ?></font>
<?php
}
else
{
?><b style='color: #645E5E'><?php echo $donnees['info']?></b>
<a href="<?php echo $donnees['url']; ?>" target="_blank"><img src="<?php echo $donnees['repertoire'];?>/<?php echo $donnees['fichier'];?>" width="<?php echo $donnees['width'];?>" height="<?php echo $donnees['height'];?>">
<?php
}
}?>
</td>
<td width="1%" bgcolor=#E2E1CD></td>
<td width="13%" ALIGN=CENTER>
<?php
$reponse = mysqli_query($connect,"SELECT * FROM flash where id = '5'");
while ($donnees = mysqli_fetch_array($reponse,MYSQLI_ASSOC) )
{
if (empty($donnees['url']))
{
?>
<font size=1><?php echo $donnees['info']; ?></font>
<?php
}
else
{
?><b style='color: #645E5E'><?php echo $donnees['info']?></b>
<a href="<?php echo $donnees['url']; ?>" target="_blank"><img src="<?php echo $donnees['repertoire'];?>/<?php echo $donnees['fichier'];?>" width="<?php echo $donnees['width'];?>" height="<?php echo $donnees['height'];?>">
<?php
}
}?>
</td>
<td width="1%" bgcolor=#E2E1CD></td>
<td width="13%" ALIGN=CENTER>
<?php
$reponse = mysqli_query($connect,"SELECT * FROM flash where id = '6'");
while ($donnees = mysqli_fetch_array($reponse,MYSQLI_ASSOC) )
{
if (empty($donnees['url']))
{
?>
<font size=1><?php echo $donnees['info']; ?></font>
<?php
}
else
{
?><b style='color: #645E5E'><?php echo $donnees['info']?></b>
<a href="<?php echo $donnees['url']; ?>" target="_blank"><img src="<?php echo $donnees['repertoire'];?>/<?php echo $donnees['fichier'];?>" width="<?php echo $donnees['width'];?>" height="<?php echo $donnees['height'];?>">
<?php
}
}?>
</td>
</tr>
</table>
<td id="dte"></td>
</tr>
<tr>
<td id="cig"></td>
<td id="inf"></td>
<td id="cid"></td>
</tr>
</table>
<table id="cadre" cellspacing="0" cellpadding="0">
<tr><td id="csg"></td><td id="sup"></td><td id="csd"></td></tr>
<tr><td id="gche"></td><td id="ctre">
<?php
$reponse = mysqli_query($connect,"SELECT * FROM news order by date desc");
while ($donnees = mysqli_fetch_array($reponse,MYSQLI_ASSOC) )
{
?>
<h2><?php echo $donnees['date']; echo " : "; echo $donnees['titre'];?></h2>
<font style="color: #645E5E; font-size: 1.2em;"><?php echo $donnees['news'];?></font><?php
/* Affichage d'une image dans la home page */
if (empty($donnees['image1']))
{
}
else
{
?><p><img src="<?php echo $donnees['repimg1'];?>/<?php echo $donnees['image1'];?>" width="<?php echo $donnees['width'];?>" height="<?php echo $donnees['height'];?>"><?php
}
/* Affichage d'une image dans la home page */
if (empty($donnees['image2']))
{
}
else
{
echo " "; ?><img src="<?php echo $donnees['repimg2'];?>/<?php echo $donnees['image2'];?>" width="<?php echo $donnees['width'];?>" height="<?php echo $donnees['height'];?>"><?php
}
/* Affichage d'une image dans la home page */
if (empty($donnees['image3']))
{
}
else
{
echo " "; ?><img src="<?php echo $donnees['repimg3'];?>/<?php echo $donnees['image3'];?>" width="<?php echo $donnees['width'];?>" height="<?php echo $donnees['height'];?>"><?php
}
/* Affichage d'une image cliquable */
if (empty($donnees['imageclic']))
{
}
else
{
?><a href="<?php echo $donnees['repfich1'];?>/<?php echo $donnees['fichier1'];?>" target="_blank"><img src="<?php echo $donnees['repimgclic'];?>/<?php echo $donnees['imageclic'];?>" width="<?php echo $donnees['width'];?>" height="<?php echo $donnees['height'];?>"> <font style="color: black;"></font><?php
}
/* Affichage du lien de téléchargement d'un fichier dans la home page */
if (empty($donnees['fichier1']))
{
}
else
{
?><p><a href="<?php echo $donnees['repfich1'];?>/<?php echo $donnees['fichier1'];?>" target="_blank"><font style="color: #645E5E;"><?php echo $donnees['titrefichier1'];?></a></font><?php
}
/* Affichage du lien de téléchargement d'un fichier dans la home page */
if (empty($donnees['fichier2']))
{
}
else
{
?><p><a href="<?php echo $donnees['repfich2'];?>/<?php echo $donnees['fichier2'];?>" target="_blank"><font style="color: #645E5E;"><?php echo $donnees['titrefichier2'];?></a></font><?php
}
/* Affichage du lien vers une URL dans la home page */
if (empty($donnees['url']))
{
}
else
{
?><p><a href="<?php echo $donnees['url'];?>" target="_blank"><font style="color: #645E5E;"><?php echo $donnees['titreurl'];?> </a></font><?php
}
}
?>
</td><td id="dte"></td></tr>
<tr><td id="cig"></td><td id="inf"></td><td id="cid"></td></tr></table>
</td>
</tr>
</table>
<?php
mysqli_close($connect);
?>
</div>
En espérant que vous pourrez m'aider car mon ami ne peut se séparer pour l'instant de son hébergeur et paie donc des frais uniquement le temps qu'on résolve ce souci.
Merci +++++++