caractères spéciaux - recherche php mysql

caractères spéciaux - recherche php mysql - PHP - Programmation

Marsh Posté le 23-10-2007 à 12:21:44    

Bonjour,
Je viens vers vous car je galère depuis 2 jours et je n'ai pas trouvé de solution.
je suis entrain de developper une application web sous windows et easy php 1.7,
dans mon application il y a une grande partie de recherche, y a des liste que je remplie à partir de la base de données mysql.
Sous easy php, tous ça marche très bien.
mais lorsque j'ai exporté cette application vers linux (ubuntu), lorsque je fais la recherche sur des mot sans caractères spéciaux ça marche imprec, mais si je fais des recherches sur des mots qui contiennent par exemple 'é' ça ne marche pas !
 
Voilà comment je remplie la liste :
 
PHP:

Code :
  1. [/php]
  2. while($array = mysql_fetch_array($req_))
  3.             {
  4. $famille .= '<option value="'.$ :hello: array1['famille'].'">'.$array1['famille']).'</option>';
  5.             }
  6. //et voilà comment je fais la recherche :
  7. $res_req=mysql_query('SELECT famille FROM tablee
  8. WHERE famille like "%'.$famille.'%" ');//$famille est recupée à partir de $_POST
  9. [/php]


merci pour vos aide.
 
Remarque : j'ai changé l'interclassement en utf8_unicode mais ça marche encore pas !


---------------
polytech'Grenoble
Reply

Marsh Posté le 23-10-2007 à 12:21:44   

Reply

Marsh Posté le 23-10-2007 à 13:52:51    

voici l'astuce pour y rémédier...
 
Definir le charset par defaut de vos sites dans Apache2
 
Ouvrez le fichier dans /etc/apache2/ portant le nom 'apache2.conf'

Code :
  1. machine:~# nano /etc/apache2/apache2.conf


En gros en bas du fichier 'apache2.conf' décommentez cette ligne:

Code :
  1. DefaultLanguage fr


avec aussi

Code :
  1. AddDefaultCharset ISO-8859-1


Ouvrez un nouveau fichier dans /etc/apache2/conf.d portant le nom 'charset'
Si ce fichier ne s'y trouve pas bien sur....

Code :
  1. machine:~# touch /etc/apache2/conf.d/charset
  2. machine:~# nano /etc/apache2/conf.d/charset


Inserez ceci dedans ou modifiez la ligne de utf-8 à ISO-8859-1 ou ISO-8859-15 (Pour afficher le symbole € aussi )
 
Comme ceci:

Code :
  1. AddDefaultCharset ISO-8859-1


Rechargez la configuration Apache2

Code :
  1. machine:~# /etc/init.d/apache2 reload && /etc/init.d/apache2 restart


 
Bon courage, Younes BOUAMOUT - Maroc


Message édité par younes371 le 23-10-2007 à 13:53:19
Reply

Marsh Posté le 23-10-2007 à 13:54:45    

Vaudrait mieux tout passer en utf-8 ;)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed