Link to home
Start Free TrialLog in
Avatar of shireen_shabbir
shireen_shabbir

asked on

Search Engine in PHP?

I am trying to create a search engine on my site (Recruitment) where candidates can look for jobs.

I am getting the results. But I want to limit the number of jobs that can be viewed per page. I have decided on four jobs per page.

I am therefore able to get the number of pages that need to be generated. But What do I do after that?

I want to create it something like the search in Altavista.com

Looks something like this:

[<< Prev] 1 2 3 4 5 etc.. [Next >>]

Awaiting your reply..
Shireen:)
Avatar of us111
us111
Flag of Luxembourg image

Which database do you use ?
Avatar of shireen_shabbir
shireen_shabbir

ASKER

MySQL
ASKER CERTIFIED SOLUTION
Avatar of us111
us111
Flag of Luxembourg image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
I am in a little trouble here. I dont know how to explain so I am putting a bit of the code:

<table width=100% cellspacing=0 cellpadding=0>
        <tr>
              <td width="15%"></td>
                <td bgcolor="#67A0BA" width="70%">
                <?
                     $mysql_link=mysql_connect("localhost", "root", "");
                     mysql_select_db("Recruit", $mysql_link);
                     
                     if ($Title == "0" & $Skill == '0' & $Location == "0" & $JobPreference == "0")
                     {
                           $query="select * from tblJob";
                     }
                     if ($Title == "0" & $Skill != '0' & $Location == "0" & $JobPreference == "0")
                     {
                           $query="select * from tblJob, tblJobSkill where ";
                           $query2="select SkillID from tblSkill where SkillName='".$Skill."'";
                  $mysql_res=mysql_query($query2, $mysql_link);
                        
                  $num=mysql_fetch_row($mysql_res);
                        
                  $query .= "tblJob.JobID=tblJobSkill.JobID and tblJobSkill.SkillID='$num[0]' and tblJob.Title like '%%' and tblJob.Location like '%%' and tblJob.JobPreference like '%%'";
                 }
                     else
                     {                                       
                           $query="select * from tblJob where ";
                  
                  if ($Title == "0")
                  {
                        $query .= "tblJob.Title like '%%' and ";
                  }
                  else
                  {
                        $query .= "tblJob.Title='".$Title."' and ";
                  }                                    
                  if ($Location == "0")
                  {
                        $query .= "tblJob.Location like '%%' and ";
                  }
                  else
                  {
                        $query .= "tblJob.Location='".$Location."' and ";
                  }
                  if ($JobPreference == "0")
                  {
                        $query .= "tblJob.JobPreference like '%%'";
                  }
                  else
                  {
                        $query .= "tblJob.JobPreference='".$JobPreference."'";
                  }
                     }
                     
                 $mysql_result=mysql_query($query, $mysql_link);                
                 
                 $numrow=mysql_num_rows($mysql_result);
                     
                       print("\n<form id=jobresult method=post action=\" \">\n");
                 print("<BR>");
                 print("<table width=75% cellspacing=0 cellpadding=0><tr><td class=td><b>Check if desired</b></td><td class=td align=center><b>Job Details</b></td></tr></table>");
                 
                 $numview=4;
                 $i=$lowernum;                
                       while (($row=mysql_fetch_row($mysql_result)) & ($i < $highernum))
                 {
                            print("\n<BR>\n");
                            print("\n<table class=tableborder width=100% border=3><tr><td>");
                            print("\n<table border=0 cellspacing=0 cellpadding=0 width=100%>\n");
                            
                            print("\n<tr><td align=center>&nbsp;<input type=checkbox size=15 value=$row[0]>&nbsp;</td>\n");
                      
                       print("\n<td class=boldsmallfont>Job Title: </td>\n");
                       print("\n<td class=td colspan=2>$row[1]</td><td></td></tr>\n");
                      
                       print("\n<tr><td></td><td class=boldsmallfont>Position: </td>\n");
                       print("\n<td class=td colspan=2>$row[2]</td><td></td></tr>\n");
                      
                       print("\n<tr><td></td><td class=boldsmallfont>Job Preference: </td>\n");
                       print("\n<td class=td colspan=2>$row[3]</td><td></td></tr>\n");
                      
                       print("\n<tr><td></td><td class=boldsmallfont>Location: </td>\n");
                       print("\n<td class=td colspan=2>$row[4]</td><td></td></tr>\n");
                      
                       print("\n<tr><td colspan=4>&nbsp;</td></tr>\n");
                      
                       print("\n<tr><td></td><td class=boldsmallfont>Last Date for Applications: </td>\n");
                      
                       $query2="select date_format('$row[13]','d/m/y')" ;
                           $mysql_result2=mysql_query($query2, $mysql_link);
                      
                       $rec=mysql_fetch_row($mysql_result2);
                       print("\n<td class=td>$rec[0]</td>");
                       print("<td align=center>");
                       print("<table border=3><tr><td align=center class=td bordercolor=#aaaaaa bgcolor=#aaaaaa>");
                       print("<a href=# onClick=\"window.open('description.php3?JobID=$row[0]', 'Description', 'scrollbars,width=700 height=500');\">");
                       print("Show Details</a></td></tr></table></td></tr>");
                                             
                       print("\n<tr><td colspan=4>&nbsp;</td></tr>\n");
                      
                       print("\n</table>\n");
                       print("\n</td></tr>\n</table>\n");
                       $i += 1;
                 }
                 
                 if ($numrow > 4)
                 {
                       print("<table align=center cellspacing=0 cellpadding=5><tr>");
                       print("<td class=td>Pages</td>");
                      
                       $numpage=$numrow/$numview;
                       $numex=$numrow%$numview;
                      
                       if ($numex > 0)
                       {
                             $numpage += 1;
                       }
                       for ($j=1; $j <= $numpage; $j++)
                       {
                             print("<td><A href='jobresult.php3?lowernum=$lowernum&highernum=$highernum&Title=$Title&Location=$Location&Skill=$Skill&JobPreference=$JobPreference'>$j</A></td>");                             
                       }
                       print("</tr></table>");
                 }
                ?>
                </form>
            </td>
                <td width=15%></td>
      </tr>
</table>
************************************

When I add "Limit" to the Select statement, it does not give me the total number of results. In this case, it just gives me four records.

So I have tried to do that by adding it to the while statement. Yet it doesnt work..


Please help me out..

Awaiting ur reply



Thanks in adv.
Yes with the limit command you can't get the total number of rows
What you can do is to create 2 query.

<?
$query = "select * from table";
$mysql_result=mysql_query($query, $mysql_link);      
$numrow=mysql_num_rows($mysql_result);

......
and then the query with limit

In term of performance, I don't think it will slow your system :)