Skip to content

emmanuelroecker/js-php-real-time-search

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

js-php-real-time-search (in progress)

A real-time full text search solution with javascript (client side) and php (server side)

Autocomplete, search and browsing as-you-type in real-time

Sample Search

It's working with

Check out the demo.

Feedback appreciated

Server Side

Import Data

Data must be in yaml format, some samples in tests/server/data

    <?php
    use Symfony\Component\Console\Output\ConsoleOutput;
    use GlSearchEngine\GlServerEngine;

    $output    = new ConsoleOutput();

    $yamlFiles      = [__DIR__ . "/data/web.yml", __DIR__ . "/data/web2.yml"];  //yaml files list to import in database
    $dbname         = __DIR__ . "/data/web.db"; //database path
    $table          = "web";    //prefix table name
    $fieldsFullText = ['title', 'tags', 'description', 'address', 'city'];  //fields list to fulltext search
    $fieldsFilter   = ['gps']; //fields list possibly used to filter

    $engine = new GlServerEngine($dbname, $output, true);
    $engine->importYaml(
           $table,
           $fieldsFilter,
           $fieldsFullText,
           $yamlFiles,
           function () use ($output) { //callback function to each import
               $output->write(".");
           }
    );

Service

Example of php file called by javascript client.

Configure Apache Server

Allow multiple requests to be sent over the same TCP connection

Header set Connection Keep-Alive

Client side

Example of use

Running Client/Server Tests

Launch from command line :

vendor\bin\phpunit

To Do

Ranking / Sorting

Licence

GNU 2

Contact

Authors : Emmanuel ROECKER & Rym BOUCHAGOUR

Web Development Blog - http://dev.glicer.com

About

Autocomplete, search and browsing as-you-type

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published