2017-10-18 11 views
1

データベースの値を<label>に取得できません。 私はドロップダウン選択オプションを持っており、私はそれにonchange()関数を書きました。私はドロップダウンリストからオプションを選択すると、PHPファイルを実行する必要があり、値を実行し、印刷/それを警告...php、ajax、jqueryを使用してデータベースから<label>に設定値を呼び出す方法

ここに私のhtml

<form method="POST">                        

           <div class="row"> 
            <div class="col-md-3 field-label-responsive"> 
             <label for="name">Doctor ID</label> 
            </div> 
            <div class="col-md-6"> 
             <div class="form-group"> 
              <div class="input-group mb-2 mr-sm-2 mb-sm-0"> 

               <select class="custom-select" id="selectDoctorID" name="selectDoctorID"> 
                <option value="1">1</option>          
                <option value="2">2</option>      
               </select> 

              </div> 
             </div> 
            </div>       
           </div> 


           <div class="row text-center"> 
            <div class="col-md-3"></div> 
            <div class="col-md-6"> 
             <button type="submit" class="btn btn-primary">Generate</button> 
            </div> 
           </div> 



     </form> 

は、ここに私のjavascript/jquery

<script> 
      $(document).ready(function(){ 
       $('#selectDoctorID').on('change',function(event){ 
        event.preventDefault(); 
        $.ajax({ 
         url: "medical.php", 
         type:"post", 
         dataType: "json", 
         success: function(result){ 
          alert(result); 
         } 
        }); 
       }) 
      }); 
     </script> 

だですここに私です。medical.php

<?php 
include './database_connect.php'; 
$id=$_POST['selectDoctorID']; 
$query="SELECT * FROM doctor WHERE d_Id='$id'"; 

$result= mysqli_query($conn, $query); 
while($row= mysqli_fetch_array($result)){ 
echo $row['d_fname']; 
} 

? >

誰でもお手伝いできますか?私はjavascriptの部分でいくつかの間違いをしたと思いますが、わかりません。

ありがとうございました!

+0

あなたは' selectDoctorID'を送信していない 'としてみてください'$アヤックス({ \t URL: "medical.php"、 \tタイプ: "POST"、 \tデータ:{ "selectDoctorID":$(この).val()}、 \tデータ型: "JSON" 、 \t成功:関数(結果){ \t \t alert(resu lt; \t} }); ' – Satpal

+0

Sir、function()内の' result'は、私の希望として別の名前を付けることができますか? '結果'とは何ですか? – user8794865

答えて

0

あなたはあなたのPHPに自分のIDを送信して、あなたのAJAX呼び出しの答えとあなたのラベルテキストを交換する必要があります: `$アヤックス()で、

 $(document).ready(function(){ 
      $('#selectDoctorID').on('change',function(event){ 
       event.preventDefault(); 
       $.ajax({ 
        url: "medical.php", 
        type:"post", 
        data:{selectDoctorID: $('#selectDoctorID').val()}, 
        dataType: "json", 
        success: function(result){ 
         $('label[for="name"]').text(result); 
        } 
       }); 
      }) 
     }); 
+0

こんにちは、ありがとうございます。しかし、私は 'dataType'をどうしたらいいですか? 'json'または' html'ですか? – user8794865

+0

私の 'php'には他の間違いがあります(' while() 'ループで)??? – user8794865

+0

contentType: 'json'を求めているので、単純に値をテキストとして出力するのではなく、json_encode()関数を使ってPHPからJSONを返すべきだと思います。 –

関連する問題