2013-04-29 3 views
-2

MagicSuggest를 사용하여 태그를 자동 완성합니다.MagicSuggest가 PHP와 함께 작동하지 않습니다.

$(document).ready(function() { 
     var ms3 = $('#ms3').magicSuggest({ 
      data: [{id:12,name:'php'},{id:1212,name:'java'},{id:112,name:'python'},{id:125,name:'html'},{id:172,name:'css'}] 
     }); 
    }); 

을하지만이 일하지 않습니다 : 이 코드는 완벽하게 작동

$(document).ready(function() { 
     var ms3 = $('#ms3').magicSuggest({ 
      data:'data.php' 
     }); 
    }); 

PHP :

<?php 
      echo "[{id:12,name:'php'},{id:1212,name:'java'},{id:112,name:'python'},{id:125,name:'html'},{id:172,name:'css'}]"; 
    ?> 

P.S.을 이 작업은 데이터 : json 데이터가있는 'data.json'입니다.

+1

http://stackoverflow.com/questions/15488053/magicsuggest-dynamic-ajax-source – Robert

답변

0

<?php 
    $mydata = "[{id:12,name:'php'},{id:1212,name:'java'},{id:112,name:'python'},{id:125,name:'html'},{id:172,name:'css'}]"; 
?> 

$(document).ready(function() { 
    var ms3 = $('#ms3').magicSuggest({ 
     data: <?php echo$mydata;?> 
    }); 
}); 

는 데이터베이스 쿼리에서 데이터 $mydata를 채울 수 있습니다 그런 식으로 ... 당신을 해달라고 등

또는

당신의 data.php 파일에 follwing을보십시오;

<?php 
    header('Content-type: application/json'); 
    echo "[{id:12,name:'php'},{id:1212,name:'java'},{id:112,name:'python'},{id:125,name:'html'},{id:172,name:'css'}]"; 
?> 
+0

'data : '이 쿼리가 수백 행이더라도? – dcclassics

1

문제는 PHP 파일이 잘못된 MIME 유형을 반환한다는 사실입니다. 사양 작은 따옴표를 presend하지
header('Content-type: application/json');

그래서 data.php 파일이 JSON에서

<?php 
    header('Content-type: application/json'); 
    echo "[{id:12,name:'php'},{id:1212,name:'java'},{id:112,name:'python'},{id:125,name:'html'},{id:172,name:'css'}]"; 
?> 
1

과 같을 것이다 당신의 data.php 파일의 상단에이를 추가하십시오 - 당신이 따옴표

로 변경해야 json_encode 함수를 더 잘 사용할 수 있습니다.

header('Content-type: application/json'); 
echo json_encode(array(
    array('id'=>12, 'name'=> 'php') 
)); 
관련 문제