Well, I don't know how individual programmers who implemented the various search engines would do it, but, having implemented similar functions before, this is the way I would approach it.
  1. Assume your search process uses a database. The person posing the search provides the search terms, and your program formulates a SQL query based on those terms. One option in SQL is the "COUNT" option, which returns the number of records in the database matching the query. This number would be placed in the "number of matches" part of the page.
  2. To control pagination, (how many records to display on each page), you have a program variable, say $records_per_page that is either a constant value (everyone sees 20 records per page), or user configurable. You then need to keep track of what "page" you are about to show. and for each page you will display from record ($page_number - 1) * $records_per_page. SQL fetch nexts can be used to get successive records.
  3. Finally, since we are talking web pages here (are we?), you need to preserve state between sessions. There is lots of information on this site (and others) on how to do that.

In reply to Re: How do they do that? by Maclir
in thread How do they do that? by NodeReaper

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.