2012-08-09 71 views
0

我試圖讓遠程自動完成陣列PHP數組jQuery的遠程自動完成

$items = array(
    "PR-1001"=>"Product 1", 
    "PR-1002"=>"Product 2" 
); 

輸入自動完成suggection將PR-1001和PR-1002和DIV將與商品0或產品2取決於選擇附加的自動完成。我嘗試使用下面的代碼,但不能請幫助我得到上面提到的數組。

$query = "SELECT * FROM products"; 
$results = mysql_query($query, $connection); 
confirm_query($results); 
$count = mysql_num_rows($results); 
while($row = mysql_fetch_array($results)) { 
    $codes =array("{$row['pr_code']}"); 
    $names =array("{$row['pr_name']}"); 
     $i = 0; 
     $items[$i] = "\"" . $codes[$i] ."\"=>\"" . $names[$i] ."\", "; 
     $items = implode(", ", $items); 
     $i++; 
    } 

我需要一個PHP數組,顯示的print_r

Array ([DJ-1001] => Product 1 [DJ-1002] => Product 2) 

預先感謝您。


這裏的答案

$items = array(); 
while($row = mysql_fetch_array($results)) { 
    $items[$row['pr_code']] = $row['pr_name']; 
} 

謝謝啦!

回答

1

沒有有任何想法您的架構是什麼樣子:

$items = array(); 
while($row = mysql_fetch_array($results)) { 
    $items[$row['pr_code']] = $row['pr_name']; 
} 
echo json_encode($items); 
+0

謝謝主席先生,我得到這個結果{ 「DJ-1001」: 「產品1」, 「DJ-1002」: 「產品2」}我試圖把它作爲$ items = array(「PR-1001」=>「Product 1」,「PR-1002」=>「Product 2」); – Saleem 2012-08-09 06:47:32

+0

@Saleem你描述的結果是JavaScript的等價物。 – 2012-08-09 11:11:12

1

PHP你可以有關聯數組,其中關鍵字可以是整數或字符串。該值可以是任何類型。因爲你可以從你的查詢做的key=>value直assignement,然後在json返回數組(jQuery的用戶界面自動完成它的周圍仿照所以只取一個片段從官方文檔,看看它是如何工作):

$items = array(); 
while($row = mysql_fetch_array($result)) 
    $items[$row['pr_code']] = $row['pr_name']; 

echo json_encode($items); 
1

從本地數據的數據,一個URL或一個回調可以有兩種變體:

•字符串Array: [「選擇1」,「選擇2」]

•對象的與標籤陣列,並且價值屬性: [{label:「Choice1 」值: 「VALUE1」},...]

$arr = array(); 
while($row = mysql_fetch_array($results)) { 
    array_push($arr,'{ label: "' . $row['pr_code'] . '", value: "' . $row['pr_name'] . '" }'); 
} 

echo "[" . implode(',',$arr) . "]";