简体   繁体   中英

php mysql + separate between different select query

I am creating a search form using a drop down list to allow the user to select between three types of search:

  • by name
  • by specialization
  • by location

What is really happening is that the select query or the search form do not display any result. It only works on the search by name query without using any other types

My question is how to separate between these three types or how to make the drop list disable if the user did not select it?

search.php

<?php
session_start();
if($_SESSION['login'] != 'true'){
        header("location:index.php");
    }


   $login = ($_SESSION['login']);
   $userid = ($_SESSION['user_id']);
   $login_user = ($_SESSION['username']);
   $fname = ($_SESSION['first_name']);
   $lname = ($_SESSION['last_name']);
   $sessionaddres =($_SESSION['address']);


require_once('for members/scripts/connect.php'); 

// function for selecting names
function nameQuery(){

  $nameData = mysql_query("SELECT * FROM user") or die("could select database");

  while($record = mysql_fetch_array($nameData)){

     echo'<option value="' . $record['user_name'] .  '">' . $record['user_name'] . '</option>';

  }

}



// function for select by specialization

function specializationQuery(){

$specData = mysql_query("SELECT * FROM specialization");

  while($recordJob = mysql_fetch_array($specData)){

     echo'<option value="' . $recordJob['specialization_name'] .  '">' . $recordJob['specialization_name'] . '</option>';

  }


}

if(isset($_POST['search']))
{


    $Sgov = $_POST['governorate'];
    @$Sdist = $_POST['district'];
    @$Svillage = $_POST['village'];


    // query  search by name
    if(isset($_POST['name']))
    {
        $Sname =$_POST['name'];
    $sql = mysql_query("SELECT first_name, last_name, profile_pic FROM user WHERE user_name ='$Sname'")or die(mysql_error());

    if($sql)
    {
     while($getrow = mysql_fetch_array($sql))
     {
        $firstname = $getrow['first_name'];
        $lastname = $getrow['last_name'];
        $profilepic = $getrow['profile_pic'];

        if($profilepic == "") 
         {
             $profile_pic = "images/default_img.jpg";
         }
         else
         {
             $profile_pic = "userdata/profile_pics/".$profilepic;
         }



         echo "<ul>
          <li>
           ".$firstname. " ".$lastname ."
          </li>
          <li>
           <img style='width:80px' src='".$profile_pic . "'>
          </li>
         </ul>";
     }
   }
   else
   {
       echo "their was no result!!!!";
   }
  }
}

// search by specialization

if(isset($_POST['specialization']))
{
    $Sspec = $_POST['specialization'];
    $sql = mysql_query(" SELECT first_name, last_name, profile_pic FROM user WHERE specialization = '$Sspec'")or die(mysql_error());
    if($sql)
    {
     while($getrow = mysql_fetch_array($sql))
     {
        $firstname = $getrow['first_name'];
        $lastname = $getrow['last_name'];
        $profilepic = $getrow['profile_pic'];

        if($profilepic == "") 
         {
             $profile_pic = "images/default_img.jpg";
         }
         else
         {
             $profile_pic = "userdata/profile_pics/".$profilepic;
         }



         echo "<ul>
          <li>
           ".$firstname. " ".$lastname ."
          </li>
          <li>
           <img style='width:80px' src='".$profile_pic . "'>
          </li>
         </ul>";
     }
   }
   else
   {
       echo "their was no result!!!!";
   }

}
?>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>search page</title>
<link href="style/stylesheet.css" rel="stylesheet" type="text/css" />
<script type = "text/javascript" src = "http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

<script type="text/javascript">

 $(document).ready(function(){
                $("select#district").attr("disabled","disabled");
                $("select#village").attr("disabled","disabled");
                $("select#governorate").change(function(){
                $("select#district").attr("disabled","disabled");
                $("select#district").html("<option>wait...</option>");
                var id = $("select#governorate option:selected").attr('value');
                $.post("select_district.php", {id:id}, function(data){
                    $("select#district").removeAttr("disabled");
                    $("select#district").html(data);
                });
            });
            $("select#district").change(function(){ 
            id = $(this).val(); 
            $("select#village").attr("disabled","disabled");
            $("select#village").html("<option>wait...</option>");
            $.post("select_village.php", {id:id}, function(data){


            $("select#village").removeAttr("disabled");
            $("select#village").html(data);
         });
        });
            $("form#registerform").submit(function(){
                var cat = $("select#governorate option:selected").attr('value');
                var type = $("select#district option:selected").attr('value');
                var village = $("select#village option:selected").attr('value');

            });
    });


</script>
</head>


<body>
<div class="container">
<!--<?php require_once('header.php'); ?>-->
<br />
<br />
<br />
<br />

  <!-- <?php require_once('leftsideBar2.php'); ?>-->


   <div id="search-title">Search section</div>
    <div id="search-form">
    <?php include "select.class.php"; ?>
        <form action="search.php" method="post">

         Search By Name:<br />
         <select name="name" >
            <?php nameQuery(); ?>
             <option id="0">-- select By UserName --</option>
             </select>
           <br/><br/>
           Search By Governorate:<br />

        <select id="governorate" name = 'governorate'>
                <?php echo $opt->ShowGovernorate(); ?>
                </select>
           <br /><br/>
           Search by District:<br />

      <select id="district" name="district">
                    <option value="0">choose...</option>
                </select>

           <br /><br/>
           Search by Cities:<br />
           <select id="village" name="village">
                    <option value="0">choose...</option>
                </select>
           <br /><br/>
           Search By Specialization:<br />
           <select name="specialization">
             <option id="0" disabled="disabled">-- select Job --</option>

          <?php specializationQuery(); ?>
          </select>
          <input type="submit" name="search" value="Search"  />
        </form>

    </div>
</div>
<?php require_once('footer.php'); ?>
</body>
</html>

You could use this way:

...
$Sspec = $_POST['specialization'];
if ($Sspec != '') {
  $w = "WHERE specialization = '".$Sspec."'";
}
$sql = mysql_query(" SELECT first_name, last_name, profile_pic FROM user ".$w)or die(mysql_error());
...

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM