1. ⭐⭐⭐ Grosse PROMO en cours sur ma plateforme SEO My Ranking Metrics
    Rejeter la notice

[Résolu] Moteur de recherche interne et les accents

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par Surfeurdu33_greg, 17 Octobre 2007.

  1. Surfeurdu33_greg
    Surfeurdu33_greg Nouveau WRInaute
    Inscrit:
    8 Mai 2007
    Messages:
    21
    J'aime reçus:
    0
    Bonsoir à tous,

    Je suis en train d'essayer de mettre en place un petit moteur de recherche pour mon blog.

    J'ai utilisé l'un des tutos dispo ici et le moteur de recherche fonctionne très bien.
    Mais il fonctionne quand la requète ne contient pas d'accents.

    Exemple : si je recherche "maison" il va me trouver les articles correspondants sans problème.

    Par contre si je recherche le mot "période" il me trouvera bien les articles contenant "période" mais j'aimerai aussi qu'il me trouve les articles avec le mot "periode".

    Et inversement bien sur.

    Voiçi le code :

    Code:
     
    <?php
    
    if(isset($_POST['requete']) && $_POST['requete'] != NULL)  
    {  
    include('include/cnx_mysql.php');  
    $requete = htmlentities($_POST['requete'], ENT_QUOTES);  
     
    $query = mysql_query("SELECT*FROM blog WHERE body LIKE'%$requete%'ORDER BY id DESC") or die (mysql_error());  
    $nb_resultats = mysql_num_rows($query);  
    if($nb_resultats != 0)  
    {  
     
    ?>
    
    <h3>Résultats de votre recherche.</h3>
    <p>Nous avons trouvé<?php echo $nb_resultats;  
    if($nb_resultats > 1) { echo ' résultats '; } else { echo ' résultat '; }  
    ?>
    
    dans notre base de données. Voici les fonctions que nous avons trouvé :<br/>
    <br/>
    <?php
    
    while($donnees = mysql_fetch_array($query))  
    {  
    ?>
    
    <a href="fonction.php?id=<?php echo $donnees['id']; ?>"><?php echo $donnees['head']; ?></a><br/>
    <?php
    
    }  
    ?><br/>
    <br/>
    <a href="test.html">Faire une nouvelle recherche</a></p>
    <?php
    
    }  
    else  
    {  
    ?>
    
    <h3>Pas de résultats</h3>
    <p>Nous n'avons trouvé aucun résultats pour votre requête "<?php echo $_POST['requete']; ?>". <a href="test.html">Réessayez</a> avec autre chose.</p>
    <?php
    
    }  
    mysql_close();  
    }  
    else  
    {  
    ?>
    
    <p>Rechercher dans le blog</p>
    <form action="<?phpphp $_SERVER['PHP_SELF'] ?>" method="Post">
    <input type="text" name="requete" size="10">
    <input type="submit" value="Ok">
    </form>
    <?php
    
    }  
     
    ?>
    
    Les données dans ma base de données sont stockés avec des caractères du genre &eacute; &agrave;.

    Les interclassements des tables sont en "latin1_swedish_ci" et mes pages en ISO-8859-1.

    Est-ce que quelqu'un pourrait me donner quelques astuces ou pistes ?

    Faut-il stocker les mots directement avec des accents dans la base de données ?

    Ou faut-il faire comme je le fais faire un htmlentities avant de les insérer dans la base de données.

    Le problème après avec le htmlentities, c'est que si je dois faire des recherches avec LIKE , si j'ai des données de type : &eacute dedans il ne me trouvera jamais de résultats le moteur de recherche.

    J'espère être clair, et merci d'avance si vous pouvez m'aider.
     
  2. Dharius
    Dharius WRInaute impliqué
    Inscrit:
    6 Avril 2005
    Messages:
    746
    J'aime reçus:
    0
    Le mieux est de stoquer en effet avec les accent non encodés dans la bdd... là tu peux éventuellement analyser si dans la chaine recherchée il y a des accents que tu remplaces par exemple en faisant

    Code:
    $mots-cles = htmlentities($mots-cles);
     
  3. KOogar
    KOogar WRInaute accro
    Inscrit:
    16 Novembre 2004
    Messages:
    4 329
    J'aime reçus:
    20
    Les datas ca se gere en SORTIE, pas en ENTREE

    tu as des probleme en sorties maintenant; et convertir du matin en latin, ca va pas bien le faire

    essaye LIKE CONVERT('%requete%' USING latin1 ) peut-etre ?
     
  4. Leonick
    Leonick WRInaute accro
    Inscrit:
    8 Août 2004
    Messages:
    19 436
    J'aime reçus:
    0
    sauf que, entre les mots entrée et entré&eacute;e quelque soit l'interbase il me semble que cela posera problème
     
  5. bproductiv
    bproductiv WRInaute accro
    Inscrit:
    27 Décembre 2004
    Messages:
    3 705
    J'aime reçus:
    0
    Re: Moteur de recherche interne et les accents

    Tu es suédois :lol: ?
     
  6. Surfeurdu33_greg
    Surfeurdu33_greg Nouveau WRInaute
    Inscrit:
    8 Mai 2007
    Messages:
    21
    J'aime reçus:
    0
    J'ai trouvé la solution ré-enregistré toutes mes entrées sans passer par le htmlentities et là effectivement çà fonctionne mieux.

    bproductiv non je ne suis pas suédois mais apparement c'est l'interclassement qui est inssensible à la case et aux accents lors de recherche dans la base de données.
     
  7. Tilt
    Tilt WRInaute impliqué
    Inscrit:
    26 Mars 2005
    Messages:
    761
    J'aime reçus:
    0
    Un autre probleme de ta requête, c'est qu'elle ne permet de rechercher que l'expression exacte, même composée de plusieurs mots-clés.
     
  8. Surfeurdu33_greg
    Surfeurdu33_greg Nouveau WRInaute
    Inscrit:
    8 Mai 2007
    Messages:
    21
    J'aime reçus:
    0
    Oui tout à fait je vais m'y mettre.

    Tu aurais des suggestions pour ça toi ?
     
Chargement...
Similar Threads - [Résolu] Moteur recherche Forum Date
[résolu] Googlebot fait pleins de recherche dans mon moteur Administration d'un site Web 5 Mars 2009
[Résolu] Comment gérer un changement de nom de domaine pour les moteurs ? Débuter en référencement 10 Février 2010
[résolu]Comment empêcher les moteurs d'indexer un site en construction? Demandes d'avis et de conseils sur vos sites 8 Octobre 2009
Problème images en https (forum phpbb) [résolu] Développement d'un site Web ou d'une appli mobile 18 Novembre 2017
[Résolu] Redirection 301 FR vers EN sur Prestashop uniquement sur outils Google ? Problèmes de référencement spécifiques à vos sites 11 Septembre 2017
[résolu] Passage à HTTPS, comment tester une page ? Développement d'un site Web ou d'une appli mobile 7 Septembre 2017
[Résolu] squat nom de domaine - que faire ? Débuter en référencement 16 Mai 2017
[Résolu] Redirection d'une famille d'URL URL Rewriting et .htaccess 9 Mars 2017
[Résolu] Diaporama et SEO Débuter en référencement 17 Janvier 2017
[résolu]Redirection monsite.fr/index.html sur monsite.fr et seo URL Rewriting et .htaccess 16 Janvier 2017
  1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies.
    Rejeter la notice