Un champ de recherche sur Cake-Php

Par lakamark, il y a 13 ans


Bonjour,
J'aimerais mettre un champ de recherche sur mon site web. J'ai essayer avec des plugins qui a sur internet, mais le problème c'est qui ne sont pas tout pour la version 2.0x. C'est la version que j'utilise de ce framework.
Par où je doit commencer pour faire un script maison pour faire des recherche sur le contenu de mon site web?

Est-ce que vous avez des pistes à me suggérer pour la mise en place de ce système.

Merci de votre aide en avance. :)

10 réponses

jerm3005, il y a 13 ans

Salut,

J'ai exactement le même problème.
Moi j'utilise à présent la version 2.1.1.

Avant j'étais en version 1.3 et j'utilisais le plugin que l'on peut trouver à l'adresse suivante:
https://github.com/kalt/search
Cela fonctionait très bien avec la version 1.3

Pour la nouvelle version de cakephp, j'ai modifié le nom des fichiers de manière à enlever les "_".
Le reste du code à l'air correcte avec la version actuelle de cakephp.

Le problème c'est qu'il me met le message suivant:

Error: Search.SearchableBehavior could not be found.

Error: Create the class SearchableBehavior below in file: E:\wamp\www\cakenewversion\app\Plugin\Search\Model\Behavior\SearchableBehavior.php

Pourtant cette classe existe bien!!!

Si quelqu'un à une idée je suis preneur.

Si jamais Grafikart pouvais nous faire une vidéo la dessus se serait génial. :)

En attendant je continue de rechercher.

lakamark, il y a 13 ans

Je vais essayer ce plugin et je vous en donne des nouvelles

Grafikart, il y a 13 ans

Code maison ! #commentairepasconstructif

lakamark, il y a 13 ans

Grafikart Je ne comprend pas le but de dire Comment pas constructif?

duffJohn, il y a 13 ans

Pourquoi ne pas faire un code a la main, avec une vue spécifique a votre résultat de recherche?
Un champs de recherche qui pointe vers un find?

Moi en tout cas c'est ce que j'ai fait ;)

lakamark, il y a 13 ans

Tu me dit que sans mon controller post par exemple je fait une fonction search() et que dans cette vue je parcoure mes article qui on un lien avec le mot clé entrez dans le champ de recherche...

Ce je comprend de ta réponde, à mois que je me trompe...

duffJohn, il y a 13 ans

Enfait ce que je veu dire c'est que par exemple tu a un formulaire de recherche du genre :

<?php echo $this->Form->create('Post',array('id' => 'textBox', 'type' => 'post','url' => array('controller' => 'posts', 'action' => 'resultSearch'))); ?>
                <?php echo $this->Form->input('search', array('label'=>"",'placeholder'=>'SEARCH','id'=>'search')); ?>
              <?php echo $this->Form->end(); ?>

Et dans ton controleur PostsController la fonction :

function resultSearch(){
        $search = $this->request->data'Post']'search'];
        $d'posts'] = $this->Post->find('all', array(
            'conditions' => array(
            'online'=>'1','type'=>'post',
            "OR"=>array('Post.name LIKE'=>'%'.$search.'%','Post.content LIKE'=>'%'.$search.'%'))));
        $this->set($d);
        $this->render('index');
    }

Par exemple.

lakamark, il y a 13 ans

Ç'est si simple que ça! J'ai pas pensée plus-tôt!

lakamark, il y a 13 ans

Merci beaucoup