2013-10-09 3 views
0

PHP 파일을 호출하기 위해 $ .ajax 메서드를 사용해야합니다. 드라이버 ID를 PHP 파일에 전달해야합니다. PHP 파일은 id를 검색하고, 쿼리를 실행하여 드라이버 이름을 얻은 다음 해당 이름을 폼에 반환하여 적절한 텍스트 상자를 자동 채우기 할 수 있습니다. 여기aJAX PHP 파일 호출

var id=$('#DriverID').val(); 
    $.ajax({ 
     url: 'drivername.php', 
     data: {driverid: id}, 
     type: 'POST', 
     success: function(data) { 
      $.('#DriverName').val(data); 
     } 
    }); 

는 PHP 있어요 :

$driverid=$_POST['driverid']; 


$host="Host to database"; 
$user="user" 
$password="password"; 
$db="database"; 

$driver=""; 
$query="SELECT driver_name FROM drivers WHERE driver_id=$driverid"; 
$cn=mysqli_connect($host, $user, $password, $db); 
$result=mysqli_query($cn, $query); 
while($data=mysqli_fetch_array($result)) 
{ 
    $driver=$data['driver_name']; 
} 
echo $driver; 

가 어떻게 드라이버의 이름을 반환하는 PHP 파일을 구성 않으며, 또한, 아약스 메서드 구문이 올바른지 여기 아약스 방법은?

+1

, 작동합니까? 작동하지? 뭐가 문제 야? 질문이 뭐야? 추신 '$. ('# DriverName')'이 틀리거나'while' 루프 안에서'$ driver = ... '를 사용하지 않습니다 (어쨌든 여기서는 필요 없습니다). –

+0

P.P.S. * SQL 쿼리에서 직접'$ _POST' 변수를 사용하지 마십시오. MySQLi를 사용하고 있습니다. [prepared statements] (http://php.net/manual/en/mysqli.quickstart.prepared-statements.php)를 사용하십시오. –

답변

0

PHP 스크립트가 이미 SQL로 설정하는 "드라이버 이름"변수를 반환하고있는 것 같습니다. 반환 값이 더 크거나 더 복잡하면 (예 : 여러 값, 배열/객체/등) JSON으로 인코딩하고 jQuery를 사용하여 JSON을 디코딩 할 수 있습니다. 반환 데이터와 CSS ID가 "를 DriverName"를 업데이트하려면, 당신은 단지 외부 것 같아요. ""

success: function(data) { 
    $('#DriverName').val(data); 
} 

이 질문은 매우 유사 : 그래서 jQuery ajax - update div