[SQL] Meme requete qui ne donne pas le meme résultat

Nouveau WRInaute
Bonjour à tous,

j'ai un petit problème que je n'arrive pas à résoudre. Voici une requête SQL :

Code:
SELECT * FROM Documents WHERE title LIKE '%thèse%'

Quand je tape cette requête directement dans PHPMyAdmin, j'ai 2 résultats. Cependant j'ai voulu faire un moteur de recherche, donc voici une partie de mon code PHP :

Code:
<?php   
$req = $bdd->query("SELECT * FROM Documents WHERE title LIKE '%thèse%'");   

while ($donnees = $req->fetch())
{
    echo "test !";
					
} 
?>

Le problème c'est que "test" ne s'affiche jamais, on ne rentre donc jamais dans le while !
Pour info, ma base de données est en utf8 ainsi que les pages de mon site.
J'ai remarqué que dès que je tape un accent dans le moteur de recherche, je n'ai jamais de résultats trouvés.

Auriez-vous une solution car là je ne vois pas du tout le problème 8O

Merci beaucoup ! :)
 
WRInaute impliqué
Et si tu essaies simplement ça:
Code:
<?php   
$req = mysql_query("SELECT * FROM Documents WHERE title LIKE '%thèse%'");   

while ($donnees = mysql_fetch_array($req))
{
    echo "test !";
               
}
?>

Pour les accents, as-tu mis en tête dans ton code APRES LA CONNEXION SQL:
Code:
mysql_query("SET NAMES UTF8");
 
Nouveau WRInaute
Merci à vous ! En fait le problème venait bien de l'encodage des caractères. Je trouve que c'est bien plus simple de travailler en iso-8859-1 qu'en utf-8 !
J'ai donc utilisé des utf8_encode et des utf8_decode et ça marche :)
 
WRInaute accro
Euh ? Dans ce cas cela veut simplement dire que ton fichier était en caractères windows. Pour travailler (simplement) en utf-8 il faut simplement faire attention à ce que les fichiers textes soient enregistrés en utf-8
 
Nouveau WRInaute
Toutes mes pages étaient encodées en ut8 par défaut (via le logiciel) mais j'avais oublié de déclarer ceci :
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> :roll:

Une fois déclaré, tout est rentré dans l'ordre.
 
Discussions similaires
Haut