2016-12-08 7 views
-1

誰かがその名前でレコードをフィルタリングするコードを修正できますか?私はクエリを知っているが、おそらく私はそれを適切に実装していないだろう。名前でデータベースからレコードを検索するPHPスクリプト。 (フィルタ名で)

ここに私のコードです。私は都市で検索するか、単にテキストボックスに名前をつけて病院を検索したいと思っています。 search-by-nameは、私がデータベースから検索したい名前を書くはずの入力フィールドのためのものです。私は両方のオプションを利用可能にしたい。これは私のためにはうまくいかないので、私はそれを正しく実装する必要があります。

if (isset($_POST['search'])) { 
    if (isset($_POST['search-by-city'])) { 
     $city_id = $_POST['search-by-city']; 

     $query = "SELECT * FROM `hospitals` WHERE `City_ID` LIKE '$city_id'"; 
     $result = mysqli_query($con,$query); 

     if (isset($_POST['search-by-name'])) { 
      $hospital_name = $_POST['search-by-name']; 
      $query = "SELECT * FROM `hospitals` WHERE `Name` LIKE '$hospital_name'"; 
      $result = filterTable($query); { 
       if (mysqli_num_rows($result) == 0) { 
        echo '<div class="col-md-12"> <h2>No recod Found</h2> </div> '; 
       } 
      } 
     } 
     while($row = mysqli_fetch_array($result)){ 
      $city_id = $row[3]; 
      $query = "SELECT `Name` FROM `cites` WHERE `ID` LIKE '$city_id'"; 
      $result2 = mysqli_query($con,$query); 
      $row2 = mysqli_fetch_row($result2); 
      $city_name = $row2[0]; 
      echo '<div class="col-md-4"><h3>'.$row[1].'</h3><h4>'.$city_name.'</h4><h4>'.$row[2].'</h4><h5>'.$row[3].'</h5><h5>'.$row[4].'</h5> 
'; 
} 
} 
+0

コードは読み取り不可能で、実際に問題の内容を記述していません。誰も手伝ってくれることはまずありません。 – David

+0

病院の名前を入力して病院の名前を検索して表示したい。 (ちょうど我々が彼の名前でFacebookに友人を検索するように) –

+0

あなたは完全にStack Overflowが何を誤解している。ヘルプセンターをご覧ください:http://stackoverflow.com/tour – David

答えて

0

私はあなたのクエリがする必要があります推測している:

"SELECT * FROM `hospitals` WHERE `Name` LIKE '%$hospital_name%' 

チェックアウトmySQL manual文字列の比較で。

また、SQL照会で直接$ _POST変数を使用しないでください。これは大きなセキュリティ上の問題です。 (SQLインジェクションを検索してください。)

+0

私は前の質問が誇らしげにインデントされていないため、質問を再度掲載しました。理解することは非常に困難でした。親切にこれを見てください。 http://stackoverflow.com/questions/41052351/php-script-to-filter-by-name-the-results-from-database –

関連する問題