Рецепт №118. Из книги «128 рецептов php»
Перейти к оглавлению
Для получения данных из таблицы, можно воспользоваться ранее описанной функцией mysql_query, которая отправляет SQL-запросы к базе данных.
Чтобы получить данные, запрос должен выглядеть следующим образом:
SELECT * FROM tbl_users
, где tbl_users – название таблицы, а * — поля таблицы, значения которых необходимо получить. *(звездочка), обозначает, что будут получены все поля, если необходимо получить только некоторые, то их необходимо указать через запятую.
После выполнения запроса, необходимо обработать полученные данные, это можно реализовать с помощью нескольких php функций:
mysql_fetch_array – обрабатывает запрос и возвращает ассоциативный или числовой массив с данными. Для определения типа массива необходимо передавать флаг MYSQL_ASSOC (ассоциативный массив) или MYSQL_NUM(числовой массив), также есть третий флаг, который установлен по умолчанию MYSQL_BOTH(данные будут иметь как ассоциативные, так и числовые ключи).
mysql_fetch_row – обрабатывает запрос и возвращает массив данных с числовыми индексами.
mysql_fetch_assoc – обрабатывает запрос и возвращает массив данных с ассоциативными индексами(именами столбцов).
mysql_fetch_object – обрабатывает запрос и возвращает объект содержащий данные.
Все эти функции работают одинаково, отличие только в виде данных, которые эти функции возвращают. Все, кроме первой, функции принимают по одному параметру – обрабатываемый результат запроса.
Пример:
// предварительно, необходимо реализовать // подключение к базе данных // запрос на получение данных // при ошибке остановим скрипт и выведем ошибку $query = mysql_query(" SELECT * FROM tbl_users ") or die(mysql_error()); // массив для данных $users = array(); // перебираем все полученные данные по одной строке // и записываем их в массив while($row = mysql_fetch_array($query, MYSQL_ASSOC)){ $users[] = $row; } // вывод результата print_r($users);
Спасибо!