2016-09-11 8 views
0

PHPのデータを配列形式で返す問題があります。データを表示するajaxクエリを作成しています。div 1はドロップダウンされ、2番目はdivですべてのデータが表示されますが問題です が がここデータがAjaxを返さない

$(document).ready(function() { 
$("#city").on('change', function() { 
    var city = $('#city option:selected').text(); 

    $(document).ajaxStart(function() { 
     $('#wait').css('opacity', '1'); 
    }); 

    $(document).ajaxComplete(function() { 
     $('#wait').css('opacity', '0'); 
    }); 

    $.ajax({ 
     type  : "POST", 
     data  : {city: city, command: 'city'}, 
     dataType : 'JSON', 
     url  : "includes/get_data.php", 
     success : function(data) { 
      $("#location").html(data.city); 
      $("#leads").html(data.lead); 
     } 
    }); 
}); 
}); 

私はそうしようとすると、すべてのデータがドロップダウンに表示し、何が第二のdivに影響しないtehのデータは誰も私を助けることができることをしてくださいですがget_data.php

if(isset($_POST["command"]) && $_POST['command'] == 'city') { 
    $sql = mysqli_query($connection, "SELECT DISTINCT location FROM doctors WHERE city = '".$_POST['city']."'"); 
    echo "<option> --- Select Location --- </option>"; 
    while($data1 = mysqli_fetch_assoc($sql)) { 
     $data['city'] = "<option"; 
      if(isset($_POST['location']) == $data1['location']) { 
       $data['city'] .= " selected"; 
      } 
     $data['city'] .= ">".$data1['location']."</option>"; 
    } 

    $sql2 = mysqli_query($connection, "SELECT * FROM doctors WHERE city = '".$_POST['city']."'"); 

    if(mysqli_num_rows($sql2) >= 1) { 
     while($data2 = mysqli_fetch_assoc($sql2)) { 

     $data['lead'] = '<div class="postings doctor">'; 
     $data['lead'] .= '<div class="col-md-9"><div class="inner">'; 
     $data['lead'] .= '<h2>'.$data2['name'].'</h2>'; 
     $data['lead'] .= '<span>'.$data2['field'].'</span>'; 
     $data['lead'] .= '<p><'.$data2['qualification'].'</p>'; 
     $data['lead'] .= '<ul><li><span>Address</span>'.$data2['address'].'</li>'; 
     $data['lead'] .= '<li><span>Fee Range</span>'.$data2['fee_range'].'</li></ul></div></div>'; 
     $data['lead'] .= '<div class="col-md-3"><a href="details.php?id='.$data2['id'].'">View Details</a></div><div class="clearfix"></div></div>'; 
     } 
    } 
    echo json_encode($data); 
    exit(); 
} 
+0

'data = JSON.parse(data);'またはPHPの右ヘッダ()を設定します。 – JOUM

+0

data = JSON.parse(data);私はjsコードを書いたmain.jsにこれを書かなければならないのですか? –

答えて

1

削除されます有効なjsonを取得するecho "<option> --- Select Location --- </option>"; :)

+0

どのように鈍い私は非常にあなたsooに感謝しています:) –

+0

ブラウザのコンソール 'F12'を使用して、そこに応答を確認しようとするかもしれませんが、これをより早く見るかもしれません – JOUM

+0

私はconsole.logを試みていたが、 ctrl + f5によって、nohingは –

関連する問題