Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in /home/purvgwtw/public_html/tutorials/common.php on line 7
PHP Advance Search Example
Sponsered Links
Categories
Sponsered Links

PHP Advance Search Example

This is a PHP Advance Search Example, by this example you can serach according to gender, age, country, state, city, hair color, eye color, height, dress size, shoe size ctc..

Search Form:

 

Search Result:

 

<?php
    include_once './lib/config.php';
?>
<html>
<head>
    <script language="JavaScript" type="text/javascript">
        function stateChanged() {
            if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") {
                document.getElementById("result").innerHTML=xmlHttp.responseText;
            }
        }       
        // Get State
        function GetState(str) {
            xmlHttp=GetXmlHttpObject()
            if (xmlHttp==null) {
                alert ("Browser does not support HTTP Request");
                return
            }           
            var url="state.php";
            url=url+"?cnt="+str;
            url=url+"&sid="+Math.random();
            xmlHttp.onreadystatechange=stateChanged_;
            xmlHttp.open("GET",url,true);
            xmlHttp.send(null);
        }
        function stateChanged_() {
            if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") {
                document.getElementById("state1").innerHTML=xmlHttp.responseText;
            }
        }
        function GetXmlHttpObject(){
            var xmlHttp=null;
            try    {
                // Firefox, Opera 8.0+, Safari
                xmlHttp=new XMLHttpRequest();
            } catch (e) {
                //Internet Explorer
                try {
                    xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
                } catch (e) {
                    xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
                }
            }
            return xmlHttp;
        }      
    </script>
</head>
<body>
<form name="advancedSearchForm" id="advancedSearchForm" method="get" action="searchAction.php">
    <input type="hidden" name="inc" value="advancedSearchAction" />
    <table cellspacing="1" cellpadding="0" border="0" width="100%" align="left">
        <tr>   
            <th colspan="2">Advanced Search</th>
        </tr>
        <tr>
            <td align="right"><strong>Select Gender:</strong> </td>
            <td align="left">
                <select name="gender">
                    <option value="">All</option>
                    <option value="F">Female</option>                   
                    <option value="M">Male</option>
                </select>
            </td>
        </tr>
        <tr>
            <td align="right"><strong>Select Age:</strong>
                <select name="minAge" style="width: 60px;">
                    <option value="14" selected="selected">14</option>
                    <option value="15">15</option>
                    <option value="16">16</option>
                    <option value="17">17</option><option value="18">18</option>
                    <option value="19">19</option><option value="20">20</option>
                    <option value="21">21</option><option value="22">22</option>
                    <option value="23">23</option><option value="24">24</option>
                    <option value="25">25</option><option value="26">26</option>
                    <option value="27">27</option><option value="28">28</option>
                    <option value="29">29</option><option value="30">30</option>
                    <option value="31">31</option><option value="32">32</option>
                    <option value="33">33</option><option value="34">34</option>
                    <option value="35">35</option><option value="36">36</option>
                    <option value="37">37</option><option value="38">38</option>
                    <option value="39">39</option><option value="40">40</option>
                    <option value="41">41</option><option value="42">42</option>
                    <option value="43">43</option><option value="44">44</option>
                    <option value="45">45</option><option value="46">46</option>
                    <option value="47">47</option><option value="48">48</option>
                    <option value="49">49</option><option value="50">50</option>                       
                </select>yrs
            </td>
            <td align="left"><strong>to:</strong>
                <select name="maxAge" style="width: 60px;" >
                    <option value="15">15</option><option value="16">16</option>
                    <option value="17">17</option><option value="18">18</option>
                    <option value="19">19</option><option value="20">20</option>
                    <option value="21">21</option><option value="22">22</option>
                    <option value="23">23</option><option value="24">24</option>
                    <option value="25">25</option><option value="26">26</option>
                    <option value="27">27</option><option value="28">28</option>
                    <option value="29">29</option><option value="30" selected="selected">30</option>
                    <option value="31">31</option><option value="32">32</option>
                    <option value="33">33</option><option value="34">34</option>
                    <option value="35">35</option><option value="36">36</option>
                    <option value="37">37</option><option value="38">38</option>
                    <option value="39">39</option><option value="40">40</option>
                    <option value="41">41</option><option value="42">42</option>
                    <option value="43">43</option><option value="44">44</option>
                    <option value="45">45</option><option value="46">46</option>
                    <option value="47">47</option><option value="48">48</option>
                    <option value="49">49</option><option value="50">50+</option>                       
                </select>yrs
            </td>
        </tr>
        <tr>
            <td align="right"><strong>Select Country: </strong></td>
            <td align="left">
                <select name="country" style="width:160px; padding-left:5px;" onChange="GetState(this.value)">
                    <option value="" selected="selected">SELECT COUNTRY</option>
                    <option style="width:100px; padding-left:5px;" value="United States">United States</option>
                    <option style="width:100px; padding-left:5px;" value="Canada">Canada </option>
                </select>
            </td>
        </tr>
        <tr>
            <td align="right"><strong>Select State: </strong></td>
            <td align="left"><div id="state1"></div></td>
        </tr>
        <tr>
            <td align="right"><strong>Enter City: </strong></td>
            <td align="left"><input type="text" name="city" /></td>
        </tr>
        <tr>
            <td align="right"><strong>Select Hair Color:</strong>
                <select name="hairColor" style="width:100px; padding-left:5px;">
                    <option style="width:100px; padding-left:5px;" value="">All</option>
                    <option style="width:100px; padding-left:5px;" value="Brown">Brown</option>
                    <option style="width:100px; padding-left:5px;" value="Black">Black</option>
                    <option style="width:100px; padding-left:5px;" value="Blonde">Blonde</option>
                    <option style="width:100px; padding-left:5px;" value="Brunette">Brunette</option>
                    <option style="width:100px; padding-left:5px;" value="Red">Red</option>                   
                </select>
            </td>
            <td align="left"><strong>Select Eye Color:</strong>
                <?
                    $eyecolor = array('Blue', 'Brown', 'Green', 'Hazel');
                    echo '<select name="eyeColor" style="width:100px; padding-left:5px;">';
                    echo '<option style="width:100px; padding-left:5px;" value="">All</option>';
                    foreach($eyecolor as $key => $value){
                        echo "<option style='width:100px; padding-left:5px;' value = \"$value\">$value</option>\n";
                    }
                    echo '</select>';
                ?>   
            </td>
        </tr>
        <tr>
            <td align="right"><strong>Select Height:</strong>
                Min:
                <select name="minHeight" style="width:60px;">
                    <?
                        $query = "SELECT * FROM model_height";
                        $result = mysql_query($query);
                        while($row=mysql_fetch_array($result)){
                    ?>
                        <option value="<?php echo $row['id']; ?>"><?php echo stripslashes($row['feet_inches']); ?></option>
                    <?
                        }
                    ?>
                </select>
            </td>
            <td align="left">               
                Max:
                <select name="maxHeight" style="width:60px;">
                    <option value="25">6' 0"</option>
                    <?
                        $query = "SELECT * FROM model_height";
                        $result = mysql_query($query);
                        while($row=mysql_fetch_array($result)){
                    ?>
                        <option value="<?php echo $row['id']; ?>"><?php echo stripslashes($row['feet_inches']); ?></option>
                    <?
                        }
                    ?>
                </select>
            </td>
        </tr>
        <tr>
            <th colspan="2"><strong>Criteria for Female Models: </strong></th>
        </tr>
        <tr>
            <td align="right"><strong> Dress size:</strong>
                <select name="dresssize" style="width: 60px;">
                    <option value="">All</option>
                    <option value="0">0</option><option value="2">2</option>
                    <option value="4">4</option>
                    <option value="6" selected="selected">6</option>
                    <option value="8">8</option><option value="10">10</option>
                    <option value="12">12</option><option value="14">14</option>
                    <option value="16">16</option><option value="18">18</option>
                    <option value="20">20</option>
                </select>
            </td>
            <td align="left"><strong> Shoe size:</strong>
                <select name="shoesize" style="width: 60px;">
                    <option value="">All</option>
                    <option value="2">2</option><option value="3">3</option>
                    <option value="4">4</option><option value="5">5</option>
                    <option value="6">6</option><option value="6.5">6.5</option>
                    <option value="7">7</option><option value="7.5">7.5</option>
                    <option value="8">8</option>
                    <option value="8.5" selected="selected">8.5</option>
                    <option value="9">9</option><option value="9.5">9.5 </option>
                    <option value="10">10</option><option value="10.5">10.5</option>
                    <option value="11">11</option><option value="11.5">11.5</option>
                    <option value="12">12</option><option value="12.5">12.5</option>
                    <option value="13">13</option><option value="13.5">13.5</option>
                </select>
            </td>
        </tr>
        <tr>
            <td colspan="2">&nbsp;</td>
        </tr>
        <tr>
            <td align="right">
                <strong>Bust size:</strong>
                <select name="bustsize" style="width: 60px;">
                    <option value="">All</option>
                    <option value="28">28</option><option value="29">29</option>
                    <option value="30">30</option><option value="31">31</option>
                    <option value="32">32</option><option value="33">33</option>
                    <option value="34">34</option><option value="35">35</option>
                    <option value="36" selected="selected">36</option>               
                    <option value="37">37</option><option value="38">38</option>
                    <option value="39">39</option><option value="40">40</option>
                    <option value="41">41</option><option value="42">42</option>               
                    <option value="43">43</option><option value="44">44</option>
                    <option value="45">45</option><option value="46">46</option>
                    <option value="47">47</option><option value="48">48</option>               
                    <option value="49">49</option><option value="50">50</option>
                    <option value="51">51</option><option value="52">52</option>
                    <option value="53">53</option><option value="54">54</option>               
                </select>                               
            </td>
            <td align="left">
                <strong>Cup size:</strong>
                <select name="cupsize" style="width: 60px;">
                    <option value="">All</option>
                    <option value="A">A</option><option value="B">B</option>
                    <option value="B/C">B/C</option>       
                    <option value="C" selected="selected">C</option>
                    <option value="D">D</option><option value="DD">DD</option>
                    <option value="DD+">DD+</option>
                </select>                                                   
            </td>
        </tr>
        <tr>
            <td colspan="2">&nbsp;</td>
        </tr>
        <tr>
            <td align="right"><strong> Waist size:</strong>
                <select name="waistsize" style="width: 60px;">
                    <option value="">All</option>
                    <option value="19">19</option><option value="20">20</option>
                    <option value="21">21</option><option value="22">22</option>
                    <option value="23">23</option><option value="24">24</option>
                    <option value="25">25</option><option value="26">26</option>
                    <option value="27">27</option>
                    <option value="28" selected="selected">28</option>
                    <option value="29">29</option><option value="30">30</option>
                    <option value="31">31</option><option value="32">32</option>
                    <option value="33">33</option><option value="34">34</option>
                    <option value="35">35</option><option value="36">36</option>
                    <option value="37">37</option>       
                    <option value="38">38</option><option value="39">39</option>
                    <option value="40">40</option><option value="41">41</option>
                    <option value="42">42</option><option value="43">43</option>           
                    <option value="44">44</option><option value="45">45</option>
                    <option value="46">46</option><option value="47">47</option>
                    <option value="48">48</option><option value="49">49</option>           
                    <option value="50">50</option><option value="51">51</option>
                    <option value="52">52</option><option value="53">53</option>
                    <option value="54">54</option>
                </select>
            </td>
            <td align="left"><strong>Hip size:</strong>
                <select name="hipsize" style="width: 60px;">
                    <option value="">All</option>
                    <option value="29">29</option><option value="30">30</option>
                    <option value="31">31</option>
                    <option value="32" selected="selected">32</option>
                    <option value="33">33</option><option value="34">34</option>
                    <option value="35">35</option><option value="36">36</option>
                    <option value="37">37</option><option value="38">38</option>
                    <option value="39">39</option><option value="40">40</option>
                    <option value="41">41</option><option value="42">42</option>
                    <option value="43">43</option><option value="44">44</option>
                    <option value="45">45</option><option value="46">46</option>
                    <option value="47">47</option><option value="48">48</option>
                    <option value="49">49</option><option value="50">50</option>
                    <option value="51">51</option><option value="52">52</option>
                    <option value="53">53</option><option value="54">54</option>
                </select>                                   
            </td>
        </tr>
        <tr>
            <td align="right">&nbsp;</td>
            <td align="left"><input type="submit" name="submit" value="Refine Your Search" /></td>
        </tr>
    </table>
</form>
</body>
</html>

 

searchAction.php

 

<?php
    include_once './lib/config.php';
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
    <head>
        <meta name="generator" content="TSW WebCoder">
    </head>
    <body>
        <h3>Displaying Search Result of Models</h3>
            <table cellspacing="1" cellpadding="1" width="100%" align="left" >
                <tr>   
                    <th>#</th>
                    <th>Name/Image</th>
                    <th>Date Of Birth</th>
                    <th>Gender</th>
                    <th colspan="2">Hair/Eye Color</th>
                    <th colspan="3">Other Details</th>
                </tr>
        <?php
            if(isset($_REQUEST['submit'])){
                $str="select m_id, Mimage, first_name, mi, last_name, email, address, city, birthdate, age, gender, haircolor, eyecolor, height, dresssize, shoesize, bustsize, cupsize, waistsize, hipsize from tb_models where";
                if($_REQUEST['gender']!=""){
                    $str=$str." "."gender='".$_REQUEST['gender']."'";    
                    $str1='and';
                } else {
                    $str=$str." "."(gender='M' or gender='F')";    
                    $str1='and';
                }
                if($_REQUEST['minAge']!="" && $_REQUEST['maxAge']!=""){
                    $str=$str." ".$str1." "."(age >= '".$_REQUEST['minAge']."' and age <= '".$_REQUEST['maxAge']."')";    
                    $str1='and';
                }
                if($_REQUEST['country']!=""){
                    $str=$str." ".$str1." "."country='".$_REQUEST['country']."'";    
                    $str1='and';
                } else {                   
                    $str=$str." ".$str1." "."(country like '%%')";    
                    $str1='and';
                }
                if($_REQUEST['state']!=""){
                    $str=$str." ".$str1." "."state='".$_REQUEST['state']."'";    
                    $str1='and';
                } else {                   
                    $str=$str." ".$str1." "."(state like '%%')";    
                    $str1='and';
                }
                if($_REQUEST['city']!=""){
                    $str=$str." ".$str1." "."city like '%".$_REQUEST['city']."%'";    
                    $str1='and';
                }               
                if($_REQUEST['hairColor']!=""){
                    if($_REQUEST['gender']=="F"){
                        $str=$str." ".$str1." "." haircolor like '%%'";    
                    } else {
                        $str=$str." ".$str1." "." haircolor like '%".$_REQUEST['hairColor']."%'";
                    }
                    $str1='and';
                } else {                   
                    $str=$str." ".$str1." "."(haircolor like '%%')";    
                    $str1='and';
                }
                if($_REQUEST['eyeColor']!=""){
                    $str=$str." ".$str1." "."eyecolor like '%".$_REQUEST['eyeColor']."%'";
                    $str1='and';                   
                } else {                   
                    $str=$str." ".$str1." "."(eyecolor like '%%')";
                    $str1='and';
                }
                if($_REQUEST['minHeight']!="" && $_REQUEST['maxHeight']!=""){                   
                    $str=$str." ".$str1." "."(height >= '".$_REQUEST['minHeight']."' and height <= '".$_REQUEST['maxHeight']."')";
                    $str1='and';
                }               
                if($_REQUEST['gender']=="F"){
                    if($_REQUEST['dresssize']!=""){                   
                        $str=$str." ".$str1." "."(dresssize ='".$_REQUEST['dresssize']."')";
                        $str1='and';
                    } else {                   
                        $str=$str." ".$str1." "."(dresssize like '%%')";
                        $str1='and';
                    }
                    if($_REQUEST['shoesize']!=""){                   
                        $str=$str." ".$str1." "."(shoesize ='".$_REQUEST['shoesize']."')";
                        $str1='and';
                    } else {                   
                        $str=$str." ".$str1." "."(shoesize like '%%')";
                        $str1='and';
                    }
                    if($_REQUEST['bustsize']!=""){                   
                        $str=$str." ".$str1." "."(bustsize ='".$_REQUEST['bustsize']."')";
                        $str1='and';
                    } else {                   
                        $str=$str." ".$str1." "."(bustsize like '%%')";
                        $str1='and';
                    }
                    if($_REQUEST['cupsize']!=""){                   
                        $str=$str." ".$str1." "."(cupsize ='".$_REQUEST['cupsize']."')";
                        $str1='and';
                    } else {                   
                        $str=$str." ".$str1." "."(cupsize like '%%')";
                        $str1='and';
                    }
                    if($_REQUEST['waistsize']!=""){                   
                        $str=$str." ".$str1." "."(waistsize ='".$_REQUEST['waistsize']."')";
                        $str1='and';
                    } else {                   
                        $str=$str." ".$str1." "."(waistsize like '%%')";
                        $str1='and';
                    }
                    if($_REQUEST['hipsize']!=""){                   
                        $str=$str." ".$str1." "."(hipsize ='".$_REQUEST['hipsize']."')";
                        $str1='and';
                    } else {                   
                        $str=$str." ".$str1." "."(hipsize like '%%')";
                        $str1='and';
                    }
                }               
                $str=$str." ".'ORDER BY m_id DESC';
            }             
            //echo $str;
           
            $result = mysql_query($str) or die(mysql_error());
            $num_rows = mysql_num_rows($result);
            $count=1;       
            if($num_rows > 0) {
                while($rows = mysql_fetch_array($result)){
                    extract($rows);                   
                    ($Mimage=="") ? $image = "IMAGE-DEFAULT.gif" : $image= $Mimage;
                    echo '<tr>';
                    echo '<td align="center">'.$count.'</td>';
                    echo '<td align="center"><img src="lib/image.php?im=../../images/models/uploaded/'.$image.'&x=100&y=120"><br />'.$first_name.'&nbsp;'.$mi.'&nbsp;'.$last_name.'<br />'.$email.'<br />'.$address.', '.$city.'</td>';

Sponsered Links
Latest Updates
 
All Content of this site is for learning only. We do not warrant the correctness of its content. The risk from using it lies entirely with the user. While using this site, you agree to have read and accepted our terms of use and privacy policy.
Copyright © 2014 PURVACOMPUTERS.COM All Right Reserved