MySQL / PHP: Как получить столбцы и связанные данные - PullRequest
0 голосов
/ 29 марта 2011

Я знаю, что я могу получить имена столбцов / полей из базы данных, используя: SHOW COLUMNS FROM tablename ... но есть ли способ получить возвращаемые столбцы, а также содержимое, поэтому мой возврат будет как то так:

массив [0] [0] = имя столбца 1
массив [0] [1] = имя столбца 2
массив [0] [2] = имя столбца 3

массив [1] [0] = столбец 1, строка 1, значение
массив [1] [1] = столбец 2, строка 1, значение
массив [1] [2] = столбец 3, строка 1, значение

...

Я хочу построить объект JSON

jsonObj = { пункт 1 {
имя столбца 1: значение столбца 1, строки 1,
имя столбца 2: значение столбца 2, строки 1,
имя столбца 3: значение столбца 3, строки 1 ...

Редактировать: я должен добавить, что я знаю, что имена полей возвращаются с результатами запроса

(ВЫБРАТЬ * ИЗ Sometable), и если вы используете

while ($row = mysql_fetch_array($results)) { 
 $thisfield = $row['fieldname']; 
} 

Но как я могу получить к ним доступ (имена полей), когда я их не знаю?

Ответы [ 2 ]

2 голосов
/ 29 марта 2011

используйте mysql_fetch_assoc - он вернет массив

("name" => "value", "name2" => "value2" ...);

, затем используйте json_encode ($данные)

1 голос
/ 29 марта 2011

Использование mysql_fetch_assoc() или эквивалента в любой используемой вами библиотеке БД предоставит имена столбцов в качестве ключей массива.

$results = array();
while ($row = mysql_fetch_assoc($db_result))
{
  $results[] = $row;
}
foreach ($results as $column=>$value)
{
  // loop over $column and $value
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...