Well, $ndocs variable has been added into 3.1.11 sources.

Regards.

Alexander Barkov wrote:
> 
> This "SELECT count(*) FROM url" will mean the TOTAL number
> of documents. Note that it is actually not the number of
> searchable documents, because some of them may be not indexed yet
> when database is being populated during first indexing.
> 
> Probably
>   "SELECT count(*) FROM url WHERE status IN (200,304)"
> or
>   "SELECT count(*) FROM url WHERE docsize>0"
> 
> will be closer to the number of searchable documents, but this will work
> slowly.
> 
>  Also note that not all databases return count(*) quickly like MySQL,
> for
> example, PostgreSQL will scan whole table to calculate the count.
> 
> We'll add new template variable responsible  for this, but it seems
> it will be useful with MySQL only.
> 
> Laurent LEVIER wrote:
> >
> > Hi Guys,
> >
> > I wished to display the number of indexed URLs. To be able to do this nicely 
>(using templates), I did the following changes:
> >
> > *** in init.inc, in the global variables declarations, i added:
> > global $numurlsdb;
> >
> > *** Then, after
> > 
>db_init($dbtype,$dbname,$dbhost,$dbuser,$dbpass,$dbport,$dbodbc,$dbodbc_cursor_type);
> >
> >    if  ($db_format == '3.1') {
> >       $cs=load_cs($cat);
> >       $cp=load_cp($cat);
> >    }
> >
> > *** I added:
> >    // ----------------------------------------------------------------------
> >    // Laurent LEVIER changes to add NU code to return number of indexed URLs
> >    // ----------------------------------------------------------------------
> >
> >    $query ="SELECT count(*) from url";
> >
> >    if($DEBUG) echo "last_parse(): ",$query,"<BR><HR>";
> >
> >    if (!$res=db_query($query)) print_error_local('Query error: 
>'.$query."\n<BR>".db_error());
> >
> >    $numurlsdb="10";
> >    if ($row=db_fetchrow($res)) {
> >     $numurlsdb=$row[0];
> >    }
> >
> >    db_freeresult($res);
> >
> > *** To parse the data nicely, I changed template.inc:
> >
> > *** I added in all the ereg_replace a new one. I put it after lang_url_translation:
> >
> >     $str=ereg_replace('\$NU', $numurlsdb, $str);
> >
> > *** and of course, the global declaration in the print_template function:
> >
> > global $numurlsdb;
> >
> > 
>***************************************************************************************
> > It works fine. In my case, adding this in the top section of the template:
> > $NU URLs exists in the database.
> >
> > This new keyword is now replaced with the number of urls in table url.
> >
> > As this query is SQL92 conformant, it should work everywhere, so no need to deal 
>with SQL server format.
> >
> > Please confirm this represent the real number of URL that can be searched.
> >
> > Enjoy!
> >
> > Laurent LEVIER
> > IT Systems & Networks, Unix System Engineer
> > Security Specialist
> >
> > Argosnet Security Server : http://www.Argosnet.com
> > "Le Veilleur Technologique", "The Technology Watcher"
> ______________
> If you want to unsubscribe send "unsubscribe udmsearch"
> to [EMAIL PROTECTED]
______________
If you want to unsubscribe send "unsubscribe udmsearch"
to [EMAIL PROTECTED]

Reply via email to