2017-11-11 14 views
0

私はプロジェクトに取り組んでいますhtmlドロップダウンリストからオプションを選択し、データベースから選択したデータを表示する必要があります。フィルタリングと同様に、フィルタリングされたデータをデータベースから表示します。 まだ機能していない アム取得エラー:ドロップダウンメニューからPHPを選択

Its just displaying all data from db not by filtered query

<form action="search.php" method="POST"> 
<div class="md-form"> 
<select class="mdb-select" name="state_search" required> 
<option disabled selected>Choose your State</option> 
<option name="state" value="Abia State">Abia State</option> 
<option name="state" value="Adamawa State">Adamawa State</option> 
<option name="state" value="Anambra State">Anambra State</option> 
</select> 
</div> 
<div class="col-lg-4"> 
<div class="md-form"> 
<select class="mdb-select" name="school_search"> 
<option value="" disabled selected>Choose your School</option> 
<option value="Michael Opkara University">Mouau</option> 
<option value="University of Benin">UniBen</option> 
<option value="University of Porthacourt">UniPort</option> 
</select> 
</div> 
<button type="submit" class="btn purple-gradient btn-lg" name="filter">Search <i class="fa fa-paper-plane-o ml-1"></i></button> 
</div> 
</form> 

PHP

 <?php 
$school_search = $connect->real_escape_string($_POST["school_search"]); 
$state_search = $connect->real_escape_string($_POST["state_search"]); 

$query = mysqli_query($connect, "SELECT * FROM roomate WHERE (`state` LIKE '%".$state_search."%') OR (`school` LIKE '%".$school_search."%')") or die(mysql_error()); 
if($query){ 
    while($row = mysqli_fetch_array($query)){ 
    ?> 
    <div class="container" style="padding-top:70px;"> 
    <!--Grid row--> 
     <div class="row"> 
     <?php 
     foreach ($query as $user) {?> 
      <div class="col-lg-4 col-md-12 mb-r"> 
      <!--Featured image--> 
      <div class="overlay hm-white-slight z-depth-1-half mb-2"> 
       <img src="<?php echo $user['room_avatar']?>" class="img-fluid" alt="avatar image"> 
       <a><div class="mask"></div></a> 
      </div> 
      <!--Excerpt--> 
      <a href="" class="pink-text"> 
       <h6> 
       <i class="fa fa-map"></i><strong><?php echo $user['city'];?>, <?php echo $user['state'];?></strong><br> 
       <small><?php echo $user['school'];?></small> 
       </h6> 
      </a> 
      <h4><?php echo $user['type'];?></h4> 
      <p> 
       by <a><strong><?php echo $user['room_name'];?></strong></a> 
       <?php echo $user['created'];?> 
      </p> 
      <label class="badge badge-danger"> non-verified </label> 
      <a href="contact.php"> 
       <label class="badge badge-primary">Report Scam</label> 
      </a> 
      <p><?php echo $user['discription'];?></p> 
      <a class="btn btn-pink btn-rounded">Contact <?php echo $user['room_name'];?></a> 
      </div> 
     <?php 
     } ?> 
     </div>  
    </div> 
    <?php 
    } 
} 
else{ 
    echo(mysql_error()); 
} 

?> 

$_POST変数のキーと一致するように、あなたのselectニーズの

+0

あなたの質問がありますか?どのようなエラーが出ていますか? – Jonny

+0

編集を再確認してください。 dbからの検索としてデータをフィルタリングし、そのデータを検索結果として表示しようとしています。エラー:特定のクエリの代わりにDBからすべてのデータを表示していません。 –

答えて

0

名前を、この作品を作る手助けが必要です。

あなたの場合、<select>の名前はstate_searchである必要があります。

検索を$_POST['state']に変更すると、選択された名前と一致するように検索されます。$_POST

$queryの代わりに$state_search変数をクエリに使用する必要があります。

詳細が気になる場合があります。詳細に注意してください。

+0

再編集してください再確認できます –

0

あなたはエコー機能で多くのHTMLを書いています。

<?php 
$school_search = $connect->real_escape_string($_POST["school_search"]); 
$state_search = $connect->real_escape_string($_POST["state_search"]); 

$query = mysqli_query($connect, "SELECT * FROM roomate WHERE (`room_name` LIKE '%".$query."%') OR (`discription` LIKE '%".$query."%') OR (`discription` LIKE '%".$query."%') OR (`type` LIKE '%".$query."%')") or die(mysql_error());; 
$result = mysqli_query($connect, $query); 
if($result){ 
    while($row = mysqli_fetch_array($result)){ 
    ?> 
    <div class="container" style="padding-top:70px;"> 
    <!--Grid row--> 
     <div class="row"> 
     <?php 
     foreach ($query as $user) {?> 
      <div class="col-lg-4 col-md-12 mb-r"> 
      <!--Featured image--> 
      <div class="overlay hm-white-slight z-depth-1-half mb-2"> 
       <img src="<?php echo $user['room_avatar']?>" class="img-fluid" alt="avatar image"> 
       <a><div class="mask"></div></a> 
      </div> 
      <!--Excerpt--> 
      <a href="" class="pink-text"> 
       <h6> 
       <i class="fa fa-map"></i><strong><?php echo $user['city'];?>, <?php echo $user['state'];?></strong><br> 
       <small><?php echo $user['school'];?></small> 
       </h6> 
      </a> 
      <h4><?php echo $user['type'];?></h4> 
      <p> 
       by <a><strong><?php echo $user['room_name'];?></strong></a> 
       <?php echo $user['created'];?> 
      </p> 
      <label class="badge badge-danger"> non-verified </label> 
      <a href="contact.php"> 
       <label class="badge badge-primary">Report Scam</label> 
      </a> 
      <p><?php echo $user['discription'];?></p> 
      <a class="btn btn-pink btn-rounded">Contact <?php echo $user['room_name'];?></a> 
      </div> 
     <?php 
     } ?> 
     </div>  
    </div> 
    <?php 
    } 
} 
else{ 
    echo(mysql_error()); 
} 
+0

再編集してください再確認できます –

+0

$ state_searchをエコーすると、それが定義された後、あなたは何を得ますか? – OnionStand

+0

何も空白ではありません –

関連する問題