Posez votre question Signaler

Probleme caractere speciaux [PHP] [Résolu]

Adrix08 126Messages postés 3 juin 2008Date d'inscription - Dernière réponse le 5 juin 2008 à 09:27
Bonjour,
Tout dabord voici mon code :
<?php echo "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?".">"; ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<?
require('conversiondate.php');
$db=mysql_connect("localhost", "ADMIN", "admin");
mysql_select_db("flux_rss",$db);
$recherche=$_POST["recherche"];
$rubrique=$_POST["rubrique"];
$sql = "SELECT dateArticle, titreArticle FROM infosexpert WHERE rubrique= '$rubrique' AND texteParagraphe LIKE '%$recherche%' ORDER BY dateArticle DESC ";
//$req = mysql_query($sql)or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
if ($_POST["rubrique"] == 'toutes')
{
$sql= "SELECT dateArticle, titreArticle FROM infosexpert WHERE texteParagraphe LIKE '%$recherche%' ORDER BY dateArticle DESC ";
}
$result1=mysql_query($sql);
while ($row=mysql_fetch_object($result1))
{
list($year, $month, $day) = explode("-", $row->dateArticle);
$months = array("janvier", "février", "mars", "avril", "mai", "juin",
"juillet", "août", "septembre", "octobre", "novembre", "décembre");
echo "<a href='resultat.php?titreArticle=".htmlentities($row->titreArticle, ENT_QUOTES)."'>".$row->titreArticle."</a> - (".$day." ".$months[$month-1]." ".$year.")<br>";
}
?>
<?php
while($row=mysql_fetch_array($result1))
{
?>
<center><ul>
<li><a href="resultat.php?titreArticle=<?php echo $row["titreArticle"];?>"></li><?php echo $row["titreArticle"];?></a> <?php echo $row["dateArticle"];?>
</ul></center>
<?php
}
mysql_close();
?>
</body>
</html>
Les caracteres de mes liens comme les accents ne s'affiche pas pour j'ai bien mi le charset ISO, je suis vraiment en galere quelqu'un pourrait il maider svp ?
merci
Lire la suite 

Probleme caractere speciaux [PHP] »

12 réponses
Réponse
+0
moins plus
Utilise la fonction htmlentities() :
http://fr2.php.net/manual/fr/function.htmlentities.php
MrSlave- 5 juin 2008 à 09:03
Raaa il converti direct.

J'avais écris & eacute ;
(sans les espaces)
Zeross - 5 juin 2008 à 09:05
ok on a eu la même idée et on a fait la même connerie =P
MrSlave- 5 juin 2008 à 09:06
Ouaip. :)

'tain il est chiant CCM.
Ajouter un commentaire
Réponse
+0
moins plus
bonjour

As-tu essayés d'utiliser les codes accents : é pour é par exemple ??
Adrix08- 5 juin 2008 à 09:04
je ne peut pas changer mes lien il vienne directement de ma base de données, c'est un projet pour mon entreprise que je suis entrain de faire, donc je ne peut rien changer.
Zeross - 5 juin 2008 à 09:05
il faut modifier ta base de donnée en remplaçant les accents par le code correspondant dans ce cas et regarder si cela foncionne
Ajouter un commentaire
Réponse
+0
moins plus
Arf il traduit directement les accents... donc le é done 'é' sans les quotes bien sûr
Adrix08- 5 juin 2008 à 09:09
zeross je ne peut pas changer ma base de données j'ai pas loin de 200 titre si je dois changer tout les titre je n'est pas finis il doi y avoir un moyen que sa se change automatiquement mais lequel ? :S
Ajouter un commentaire
Réponse
+0
moins plus
mon probleme et resolu il falai ke je mete html_entity_decode a la place de htmlentities merci pour votre aide :)
Ajouter un commentaire
Ce document intitulé « probleme caractere speciaux [PHP] » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?