2016-09-11 2 views
0

배열 형태로 PHP 데이터를 다시 가져 오는 데 문제가 있습니다. Ajax 쿼리를 작성하여 2 div 1에 데이터를 표시하고 두 번째로 모든 데이터가 표시되지만 문제가되는 div가 생성됩니다. 내가 그렇게 TEH 데이터를 할 때 모든 데이터가 드롭 다운 아무것도에 표시한다는 것은 두 번째 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); 
     } 
    }); 
}); 
}); 

는 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은 –

관련 문제