954,561 Members — Technology Publication meets Social Media
Username:
Password:
Lost login information?
Have something to say? Contribute New Article Reply to this Article

search database content

hi
i have a application were the user admin will select a key word from the drop down based on the dropdown selection....it should search all the rows in a particular table.the corresponding matching data should get displayed to the admin.

lydia21
Junior Poster
183 posts since Nov 2007
Reputation Points: 19
Solved Threads: 5
 

If you're using MySql then you could set the storage engine to MyIsam and use the fulltextsearch capability. See the MySql docs for more info.

pritaeas
Posting Expert
Moderator
5,480 posts since Jul 2006
Reputation Points: 653
Solved Threads: 875
 

He selects a keyword from the dropdown ?
Well, then, you can simply use,
$query="select * from table where col like '%$value%'"; $value is the selected value of the dropdown.

nav33n
Purple hazed!
Moderator
4,465 posts since Nov 2007
Reputation Points: 524
Solved Threads: 356
 

thanks tat was useful.i want only 10 rows to be displayed in the one page......if the query fetches more than 10 then it should display page wise.......it should display rows in alterative colors

lydia21
Junior Poster
183 posts since Nov 2007
Reputation Points: 19
Solved Threads: 5
 
ryan_vietnow
Posting Pro
578 posts since Aug 2007
Reputation Points: 28
Solved Threads: 71
 

<?php

$industype=$_REQUEST['industype'];

$careerlevel=$_REQUEST['careerlevel'];


// how many rows to show per page
$rowsPerPage = 1;


// by default we show first page
$pageNum = 1;


// if $_GET['page'] defined, use it as page number


if(isset($_GET['page']))

{

$pageNum = $_GET['page'];

}

// counting the offset


$offset = ($pageNum - 1) * $rowsPerPage;

// $query = "SELECT val FROM randoms LIMIT $offset, $rowsPerPage";

// $result = mysql_query($query) or die('Error, query failed');

$hostname = "localhost";
$username = "";
$password = "";
$dbid = "";
$link=mysql_connect($hostname, $username, $password);
mysql_select_db($dbid) or die("unable to connect");
$query="(select * from post_resume where ind_type='$industype' and career='$careerlevel' LIMIT $offset, $rowsPerPage)";

$result = mysql_query($query) or die ('Error in query: $query. ' . mysql_error());
echo "";

if (mysql_num_rows($result) > 0)
{

$i=0;
while($row = mysql_fetch_row($result))
{

echo "";
echo "".$row[2]."";
echo "Job Type ".$row[4]."";
echo "Highest Degree ".$row[5]."";
echo "Owner ".$row[8]."";
echo "";
$i++;
}

echo $i;
echo "";
}


// print the random numbers


while(list($val) = mysql_fetch_array($result))
{


echo "$val
";

}


echo '
';

// how many rows we have in database


// $query = "SELECT COUNT(val) AS numrows FROM post_resume";

// $result = mysql_query($query) or die('Error, query failed');

// $row = mysql_fetch_array($result, MYSQL_ASSOC);

// $numrows = $row['numrows'];


$numrows = $i;


// how many pages we have when using paging?


$maxPage = ceil($numrows/$rowsPerPage);


$self = $_SERVER['PHP_SELF'];

// creating 'previous' and 'next' link

// plus 'first page' and 'last page' link


// print 'previous' link only if we're not on page one


if ($pageNum > 1)

{

$page = $pageNum - 1;

$prev = " [Prev] ";

$first = " [First Page] ";

}

else

{

$prev = ' [Prev] ';

// we're on page one, don't enable 'previous' link


$first = ' [First Page] ';

// nor 'first page' link


}


// print 'next' link only if we're not
// on the last page


if ($pageNum < $maxPage)

{

$page = $pageNum + 1;

$next = " [Next] ";

$last = " [Last Page] ";

}

else

{

$next = ' [Next] ';

// we're on the last page, don't enable 'next' link


$last = ' [Last Page] ';

// nor 'last page' link


}

// print the page navigation link

echo $first . $prev . " Showing page $pageNum of $maxPage pages " . $next . $last;

mysql_close($link);
?>

lydia21
Junior Poster
183 posts since Nov 2007
Reputation Points: 19
Solved Threads: 5
 
// how many rows to show per page
$rowsPerPage = 1;


change the $rowsPerPage to how many rows you want to display,ok?

ryan_vietnow
Posting Pro
578 posts since Aug 2007
Reputation Points: 28
Solved Threads: 71
 

tat part is working perfectly.but when i wantto switch to the next page....the page links are not working

lydia21
Junior Poster
183 posts since Nov 2007
Reputation Points: 19
Solved Threads: 5
 

2 dropdown...when data is selected it will search
<html>
<head>
</head>
<body>
<form method="post" action="paging.php" >
<div>
<table>
<tr>
<td>Industry Type</td>
<td>
<select name="industype">

<option value="Healthcare - CNAs/Aides/MAs/Home Health">Healthcare - CNAs/Aides/MAs/Home Health</option>


</select>
</td>
</tr>
<tr>
<td>
Career Level
</td>
<td>
<select name="careerlevel">
<option name="" selected></option>

</select>

</td>
</tr>
<tr>
<td>


</td>
<td>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;
<input name="submit" type="submit" value="submit"></td>
</tr>
</table>

</div>
</form>
</body>
</html>


store it as paging.php <html>
<head>
<title>Record Set Paging with PHP</title>
</head>

<body>
<?php
@ $rpp; //Records Per Page
@ $cps; //Current Page Starting row number
@ $lps; //Last Page Starting row number
@ $a; //will be used to print the starting row number that is shown in the page
@ $b; //will be used to print the ending row number that is shown in the page
/////////////////////////////////////////////////////////////////////////////////
//Database connection
/////////////////////////////////////////////////////////////////////////////////
$hostname = "";
$username = "";
$password = "";
$dbid = "";
$link=mysql_connect($hostname, $username, $password);
mysql_select_db($dbid) or die("unable to connect");
/////////////////////////////////////////////////////////////////////////////////

/////////////////////////////////////////////////////////////////////////////////
//Following IF Statement is used to make sure when the page is loaded for the
//first time, Current Page's Starting row number is 0, i.e. 1st row from the
//table is being printed. It will change as the user will click on next.
/////////////////////////////////////////////////////////////////////////////////
if(empty($_GET["cps"]))
{
$cps = "0";
}
else
{
$cps = $_GET["cps"];
}
/////////////////////////////////////////////////////////////////////////////////

$a = $cps+1;

$rpp = "10";

$lps = $cps - $rpp; //Calculating the starting row number for previous page

/////////////////////////////////////////////////////////////////////////////////
//Following IF Statement is used to make sure whether a link to Previous page is
//needed or not. If the user is viewing the first set of data then the link will
//be disabled, if on the next set then it will carry the $lps in its link and
//enable the link
if ($cps <> 0)
{
$prv = "<a href='paging.php?cps=$lps'>Previous</a>";
}
else
{
$prv = "<font color='cccccc'>Previous</font>";
}
/////////////////////////////////////////////////////////////////////////////////

/////////////////////////////////////////////////////////////////////////////////
//Following SQL Statement uses SQL_CALC_FOUND_ROWS function to calculate total
//number of rows found by the query excluding the limit function added at the
//end of the SQL statement. This is followed by second query with FOUND_ROWS()
//function which actually gives out the number of rows found.
/////////////////////////////////////////////////////////////////////////////////
$q="Select SQL_CALC_FOUND_ROWS * from post_resume limit $cps, $rpp";
$rs=mysql_query($q) or die(mysql_error());
$nr = mysql_num_rows($rs); //Number of rows found with LIMIT in action

$q0="Select FOUND_ROWS()";
$rs0=mysql_query($q0) or die(mysql_error());
$row0=mysql_fetch_array($rs0);
$nr0 = $row0["FOUND_ROWS()"]; //Number of rows found without LIMIT in action

/////////////////////////////////////////////////////////////////////////////////
//Following IF Statement is used to determine whether the user has reached the
//last page of the records. For example, if we have 27 rows to print and we show
//10 rows per page, then on the third and the last page it will show seven rows
//and will say at the top that SHOWING RECORDS FROM 21 to 27. If the following
//validator is not used then it shows SHOWING RECORDS FROM 21 to 30.
/////////////////////////////////////////////////////////////////////////////////
if (($nr0 < 10) || ($nr < 10))
{
$b = $nr0;
}
else
{
$b = ($cps) + $rpp;
}
/////////////////////////////////////////////////////////////////////////////////

?>

<table border="0" cellpadding="4" cellspacing="1" width="20%" align="center">
<tr><td align=left colspan="2"><b><font face="verdana" size=1 color="#9999CC"><? echo "$nr0 Records Found"; ?></font></b></td></tr>
<tr><td align='left' colspan="2"><b><font face="verdana" size=1 color="#9999CC"><? echo "Showing Records from $a to $b"; ?></font></b></td></tr>
<tr><td bgcolor="#000080" align='Center'><b><font face="verdana" color="#FFFFFF">SL#</font></b></td>
<td bgcolor="#000080" align='Center'><b><font face="verdana" color="#FFFFFF">Value</font></b></td>
</tr>
<?
while ($row=mysql_fetch_array($rs))
{
/////////////////////////////////////////////////////////////////////////////////
//This is used to show the serial number on the page as well as to count it up
//so that we can get the next page's starting row number when it exits the while
//loop after fullfilling the above SQL criteria.
/////////////////////////////////////////////////////////////////////////////////
$cps = $cps +1;

$val=$row["name"];
echo "<tr><td align='center'><font face=verdana>$cps</font></td><td align='center'><font fave=verdana>$val</font></td></tr>";
}

echo "<tr><td align='right' colspan=2>$prv";

/////////////////////////////////////////////////////////////////////////////////
//Following IF Statement is used to determine whether the Next link will be
//enabled or disabled. If the user has reached the last page of the record, then
//the Next link will be disabled.
/////////////////////////////////////////////////////////////////////////////////
if ($cps == $nr0)
{
echo " | <font color='CCCCCC'>Next</font>";
}
else
{
if ($nr0 > 5)
{
echo " | <a href='paging.php?cps=$cps&lps=$lps'>Next</a>";
}
}
/////////////////////////////////////////////////////////////////////////////////
?>
</td>
</tr>
</table>
</body>
</html>

lydia21
Junior Poster
183 posts since Nov 2007
Reputation Points: 19
Solved Threads: 5
 

This question has already been solved

Post: Markdown Syntax: Formatting Help
You