The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
Fulltext boolean search v.2.2 for vB Details »» | |||||||||||||||||||||||||
Hello all!
Moving here from beta forum https://vborg.vbsupport.ru/showthread.php?t=62218 This hack makes nearly same for vB3 as [vB 2.2.x] - Mysql 4 Search hack https://vborg.vbsupport.ru/showthread.php?t=51716 for vB2 You will need MySQL server v4.0.1 or better (but sometimes it may work on 3.23.xx). After installing you will be able to search with empty native vB index (word and postindex tables) and using modifiers. Allowed modifiers + are ,-, * and " All modifiers except * should be used only once for one word (in the beginning and without space). * it should be used at the end of a word. For example: windows unix -> will find messages containing at least one these words. +windows +unix -> will find messages with both this words. windows* -> will find "windows", "windowss", "windowssauce" or "windowst". *indows will NOT find "windows" "some words" -> will find "some words of wisdom", but will not find "some extra words". Search phrase length limitations replaced with results number limitation. Value of old "Search Index Maximum Word Length" used to limit number of posts in the result returned by fulltext search (control panel/Message Searching Options) Supposed that it must run faster then native vB search History: v.2.2 [5 Apr 2004] - search words relevance (when sort by relevance) added at last but little different then native vB (it may not work when searching with * modifiers) - attempt to fix incompatibility with other hacks =to upgrade replace code block #5 in search.php with latest one v.2.1 [4 Apr 2004] - Excluding from search forums with "Index New Posts in Search Engine" option set to "No" v.2.0 [30 Mar 2004] -"Similar Threads" now must start working (to move from 1.x to 2 just change one more script - functions_search.php) v.1.9 [29 Mar 2004] -checking if $query string is not empty before running fill text sql v.1.8 [20 Mar 2004] - line numbers and higlight code changed for VB3 Gold - more tests and error explanations v.1.7 [9 Mar 2004] - MySQL error for administrators bug fixed checking is $not_forumid string exixts before adding it to query v.1.6 [9 Mar 2004] - national letters bug fixed preg_replace("~[^\w\"\-+\* ]~i", "", $query); was replaced by preg_replace("~[^\w\xC0-\xFF\"\-+\* ]~i", "", $query); v.1.5 [8 Mar 2004] - TABLE_PREFIX bug fixed - slightly optimised SQL requests v.1.4 [8 Mar 2004] - delete_post_index function turned off - more tests and error explanations v.1.3 [7 Mar 2004] - less code because of using native vB $postQueryLogic and $threadQueryLogic conditions - more tests and error explanations v.1.2 [7 Mar 2004] - boolean mode can be turned off in AdminCP ("Allow Search Wild Cards" setting) - "titles only" search fixed - limiting number of matches retunned by fulltext search AFTER applying search conditions v.1.1 [7 Mar 2004] - HighLight support added Show Your Support
|
Comments |
#2
|
||||
|
||||
This goes quick
|
#3
|
|||
|
|||
i'll give it a try
|
#4
|
|||
|
|||
Anyone have any idea how efficient this is going to be with a very large board... 3 million posts.
Does it require firstly to index all of the current posts? If so, can anyone estimate how long that is likely to take? thanks in advance |
#5
|
||||
|
||||
when you will say
ALTER TABLE post ADD FULLTEXT (title) it will " index all of the current posts" And not sure about 3 millions, but that request takes about 370 seconds on P4 2400/1G RAM/two SATA 120G Maxtor disks/MySQL 4.0.16 and ~427.000 posts |
#6
|
|||
|
|||
This part of code from block 2 strip national characters in query. E.g., russian characters not passed.
PHP Code:
I'm not guru in RegExp, so can't fix it by myself. Need help. |
#7
|
||||
|
||||
On all servers that I have ever seen (since php2 "\w" match national characters But not on in latest PHP versions...
but if you want, you may say $query = preg_replace("~[^\w\xC0-\xFF\"\-+\* ]~i", "", $query); |
#8
|
|||
|
|||
Old expression strip russian characters at all.
Second one - left only first character. |
#9
|
||||
|
||||
true...
Just tested it on 7 hosts and on 3 of them it don't work... I need to update PHP version on my servers more frequently. And $query = preg_replace("~[^\w\xC0-\xFF\"\-+\* ]~i", "", $query); go to v.1.6 |
#10
|
|||
|
|||
Thanks!
|
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|