将sql查询作为数组返回

时间:2010-08-02 00:25:26

标签: php sql arrays jquery-ui

我正在使用jqueryui及其Autocomplete插件。它使用json来提取项目。

我想修改它,以便从我的数据库中提取项目。

以下是项目的方式:

$items = array(
"Great <em>Bittern</em>"=>"Botaurus stellaris",
"Great2 <em>Bittern</em>"=>"Botaurus stellaris 2"
);

如何创建一个从表中提取数据的sql查询,并将其像上面的代码一样写入php文件?

Table : customer
id_customer | name_customer | country_customer

我希望该数组产生id_customer => name_customer

2 个答案:

答案 0 :(得分:5)

查询只是:

SELECT id_customer, name_customer FROM customer

您可以像这样生成数组(假设您使用的是MySQL ):

$items = array();

$result = mysql_query($sql);
while(($row = mysql_fetch_assoc($result))) {
    $items[$row['id_customer']] = $row['name_customer'];
}

参考文献: MySQL SELECT syntaxmysql_query()mysql_fetch_assoc()

答案 1 :(得分:-1)

<?php
   //Use mysql_connect for connect to a Db

   $link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
   if (!$link) {
       die('Could not connect: ' . mysql_error());
    }

   // Select a DB
   $db_selected = mysql_select_db('db_name', $link);
   if (!$db_selected) {
      die ('Can\'t use dbame_n : ' . mysql_error());
   }

   //Build a query
   $sql = "SELECT id_customer, name_customer FROM customer";

   //Send de query to db  
   $result = mysql_query($sql);
   if (!$result) {
       die('Invalid query: ' . mysql_error());
   }

   // Initialize Array
   $arr_customers = array();
   while(($row = mysql_fetch_assoc($result))) {
       $arr_customers[$row['id_customer']] = $row['name_customer'];
   }

   // convert to JSON
   $json = json_encode($arr_customers);

   // Send to JqueryUI

   echo $json;
   exit();
    ?>