Salut à tous,
J'ai un petit problème au niveau de l'affichage des "éèà" ect..
Je ne comprend pas du tout d'où viens le problèmes, mes tables sont toutes en utf8_unicode_ci, ma page news.php ( ou est la source du soucis ) est aussi en utf8, alors que sur une autre page tout s'affiche correctement, voici mes deux pages :
La première qui beug : (news.php)
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 STRICT//EN" "http://www.w3.org/TR/xhtml1/DTDxhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:kang="fr" lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>B</title>
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
<div id="barre">
<div class="barrel">Pseudo : <input type="text"/> Mot de passe : <input type="password" /> Mot de passe oublié ?</div>
<div class="barrer"><a href="#">Inscription</a></div>
</div>
<div id="menu">
<ul>
<li><a href="index.php">Accueil</a></li>
<li><a href="news.php">News</a></li>
<li><a href="#">Profils</a></li>
<li class="right"><a href="#">Contact</a></li>
</ul>
</div>
<div style="clear: left;"></div>
<div id="haut_conteneur"></div>
<div id="content_conteneur">
<div id="contenu">
<div id="haut_contenu">Fresh News !</div>
<div id="content_contenu">
<?php
require "config.php";
mysql_connect(DB_HOST, DB_LOGIN, DB_PASS);
mysql_select_db(DB_BDD);
$sql="SELECT * FROM news ORDER BY id DESC";
$req= mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
while($data=mysql_fetch_assoc($req)){
echo "<h1>{$data"titre"]}</h1>";
echo "<p>{$data"contenu"]}</p>";
echo "<span align=\"left\">".date("j/n/Y G:i",strtotime($data"date"]))."</span>";
}
?>
</div>
<div id="bas_contenu"></div>
</div>
<div id="haut_nav"></div>
<div id="contenu_nav">
Pub
</div>
<div id="bas_nav"></div>
</div>
<div id="bas_conteneur"></div>
</body>
</html>
Et la seconde qui fonctionne : (admin/index.php)
<?php
require"../config.php";
mysql_connect(DB_HOST, DB_LOGIN, DB_PASS);
mysql_select_db(DB_BDD);
$sql="SELECT * FROM news";
$req= mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
while($data=mysql_fetch_assoc($req)){
echo "<p>{$data"titre"]}";
echo " - <a href=\"modif.php?id={$data"id"]}\">Modifier cette news</a>";
echo " - <a href=\"suppr.php?id={$data"id"]}\">x</a>";
echo "</p>";
}
?>
Si vous avez une idée n'hésitez pas à proposer :)
Merci :D
Et ta connection mysql est en iso selon moi, juste après le mysql_select_db met un bon gros
mysql_query('SET NAMES "UTF8"');
Salut,
ton encodage général devrait être en iso-8859-1 pour ce qui concerne les pages écrites en dur.
ensuite, ton appel a la base devrais générer les chaine de caractère en UTF-8 par defaut.
je sais que ca marche comme ca pour un site que j'ai fais.
En espérant t'avoir aidé.
6borg.
@6borg: J'ai toujours fonctionné avec mon système et jusque là ça marchais, le poste de Graf' m'a aidé mais merci de ta participation :D
@Grafikart: Merci, ca marche beaucoup mieux ! Cependant j'ai trouvé un autre problème HTML/CSS. Dois-je refaire un poste ou je peux l'expliquer ici ?
Merci à vous deux :)
Recrée un post, je verouille celui là. (Comme ça si quelqu'un retombe sur le sujet il verra direct la solution :)