function build_query($q){ $params=array(); // All parameters are added here and // remove tags $this->q=substr(trim(strip_tags($q),0,80)); // Basic parameters $params['use']='myIndex'; // Index used $params['qt']='search'; // Query template used // Collapsing $params['collapse.mode']='cluster'; $params['collapse.field']='host'; $params['collapse.max']=1; // Pagination if(isset($_GET['page'])) $params['start']=((int) $_GET['page']*10)-9; else $params['start']=1; $params['rows']=$this->rpp; $params['query']=trim($q); // The search key itself $params['sort']='score'; // Use a minus allowance // sign for reverse order $host='http://127.0.0.1:8080/select'; // URL of the OSS host // In case somebody injected a "Delete" parameter: unset($params['delete']); $this->query=$host.'?'.http_build_query ($params); }