Получение отдельной ячейки результата
mixed mysql_result(int $result, int $row, mixed $field)
Функция возвращает значение поля $field в строке результата с номером $row. Аргумент field может быть порядковым номером поля в результате, именем поля или именем поля с именем таблицы через точку tablename.fieldname. Если для имени поля в запросе применялся алиас ('SELECT foo AS bar FROM...'), используйте его вместо реального имени поля. При задании порядкового номера поля, нумерация начинается с нуля.
$conn=mysql_connect("localhost","","");$database = "book";mysql_select_db($database);$sql = "SELECT * FROM People"; // создаем SQL запрос$q = mysql_query($sql,$conn) or die(); // отправляем запрос на сервер$n = mysql_num_rows($q); // получаем число строк результата//отображаем значения полей for($i=0;$i<$n; $i++){ // перебираем все строки в результате запроса на выборку foreach ($names as $val) { // перебираем все имена полей $value = mysql_result($q,$i,$val); // получаем значение поля echo "<br>$value"; // выводим значение поля } }
Функция mysql_result() универсальна с ее помощью можно "обойти" весь результат по одной ячейке. Однако mysql_result() работает довольно медленно.
Функцию mysql_result() целесообразно применять, когда результирующий набор данных состоит из единственной ячейки. Например:
$r = mysql_query('SELECT COUNT(*) FROM people'); echo "Число строк в таблице: ".mysql_result($r, 0, 0);
Еще одна функция, обрабатывающая ряд результата запроса, возвращая массив (ассоциативный, численный или оба) с обработанным рядом результата запроса, или FALSE, если рядов больше нет. mysql_fetch_array- это расширенная версия функции mysql_fetch_row(). Помимо хранения значений в массиве с численными индексами, функция возвращает значения в массиве с индексами по названию колонок. Функция mysql_fetch_array() работает не медленнее, чем mysql_fetch_row(), и предоставляет более удобный доступ к данным.
array mysql_fetch_array ( resource result [, int result_type])Второй опциональный аргумент result_typeв функции mysql_fetch_array() является константой и может принимать следующие значения: MYSQL_ASSOC, MYSQL_NUM и MYSQL_BOTH. Значением по умолчанию является: MYSQL_BOTH.
Используя MYSQL_BOTH, получим массив, состоящий как из ассоциативных индексов, так и из численных. MYSQL_ASSOC вернет только ассоциативные соответствия, а MYSQL_NUM - только численные. ВНИМАНИЕ: имена полей, возвращаемые этой функцией зависят от регистра.
Если несколько колонок в результате будут иметь одинаковые названия, будет возвращена последняя колонка. Чтобы получить доступ к первым, следует использовать численные индексы массива или алиасы в запросе.
// с помощью mysql_fetch_array():<?/* ... начало то же, что и в предыдущем примере */ // отображаем значения полей// получаем значение поля в виде ассоциативного массива while($row = mysql_fetch_array($q, MYSQL_ASSOC)) { echo "<tr>"; foreach ($names as $val){ echo "<br>$row[$val] "; // выводим значение поля } }?> Задание1. Создать форму для отображения любой таблицы базы данных. Форма должна содержать список всех таблиц некоторой базы данных. При выборе какой-то таблицы из списка, эта таблица выводится в виде обычной таблицы со всем ее содержимым.
2. Разработать ряд функций для работы с базов данных форума. Обеспечить возможность добавлении, удаления, редактирования данных, а также просмотр статистики, например для каждой темы, количество сообщений по этой теме.
Дата добавления: 2015-08-26; просмотров: 689;