Новые книги

 Второе издание популярного справочника полностью переработано и расширено с целью предоставить читателю наиболее полное описание средств разработки, конфигурирования, использования и обслуживания сетей TCP/IP и соответствующих служб.

Книга написана увлекательно и доступно. Она содержит дополнительные материалы о нескольких протоколах Интернета, используемых серверами и браузерами WWW, а также рассматривает все последние изменения в этой области. В книгу включены главы о новом стандарте безопасности IP и протоколе IP следующего поколения, известном как IPng или IPv6. Рисунки и таблицы наглядно показывают влияние средств безопасности IP и IPng на существующие сетевые среды.

Издание содержит следующие дополнительные разделы:

• Безопасность IP и IPv6

• Описание средств WWW, новостей Интернета и приложений для работы с gopher

• Подробное описание серверов имен доменов (DNS), маски подсети и бесклассовой маршрутизации в Интернете

• Таблицы и протоколы маршрутизации

• Руководство по реализации средств безопасности для каждого из протоколов и приложений

• Примеры диалогов с новыми графическими инструментами

Новое издание бестселлера по TCP/IP станет незаменимым помощником для разработчиков сетей и приложений, для сетевых администраторов и конечных пользователей.
UX-стратегия, или стратегия опыта взаимодействия (UX, User Experience), лежит на стыке UX-дизайна и бизнес-стратегии. Интернет продолжает предлагать потребителям бесконечный ассортимент цифровых решений. Каждый щелчок, жест или наведение мыши становятся решением, которое принимается пользователем. Пользователь постоянно сталкивается с выбором: покупать или не покупать, одобрить или высмеять, рассказать другим или забыть, завершить или отменить. Вы должны знать, какие возможности следует предлагать и как они используются людьми. Вы должны разбираться во всех последних и ожидаемых устройствах, платформах и приложениях, чтобы оценить возможность их применения в ваших решениях. Вы и ваша команда должны сделать все возможное, чтобы Алиса упала в кроличью нору и оказалась в Стране чудес.

sesam_fetch_row

Учебник РНР
НазадВперёд

sesam_fetch_row

(только PHP 3 CVS)

sesam_fetch_row - извлекает один ряд как массив.

Описание

array sesam_fetch_row (string result_id [, int whence [, int offset]])

Возвращает массив, соответствующий извлечённому ряду, или FALSE, если рядов больше нет.

Количество столбцов в результирующем наборе возвращается в элементе ассоциативного массива $array["count"]. Поскольку результирующие столбцы могут быть пустыми, функция count() не может использоваться с результирующим рядом, возвращённым функцией sesam_fetch_row().

result_id это правильный result id, возвращённый функцией sesam_query() (только запросы select!).

whence это необязательный параметр для операции извлечения в "scrollable/прокручиваемых" курсорах, который может иметь в качестве значения одну из предопределённых констант:

Таблица 1. Правильные значения параметра "whence"
ЗначениеКонстантаСмысл
0SESAM_SEEK_NEXT читать последовательно (после извлечения по умолчанию устанавливается SESAM_SEEK_NEXT)
1SESAM_SEEK_PRIORчитать последовательно в обратном направлении (после извлечения по умолчанию устанавливается SESAM_SEEK_PRIOR)
2SESAM_SEEK_FIRST вернуться к первому ряду (после извлечения по умолчанию устанавливается SESAM_SEEK_NEXT)
3SESAM_SEEK_LASTнайти последний ряд (после извлечения по умолчанию устанавливается SESAM_SEEK_PRIOR)
4SESAM_SEEK_ABSOLUTE найти абсолютный номер ряда, заданного как offset (С базой 0. После извлечения по умолчанию устанавливается SESAM_SEEK_ABSOLUTE, а внутреннее значение смещения увеличивается на 1)
5 SESAM_SEEK_RELATIVEискать относительно текущей позиции курсора, где offset может быть положительным или отрицательным значением смещения.

Этот параметр верен только для "scrollable" курсоров.

При использовании "scrollable" курсоров, курсор можно свободно позиционировать в результирующем наборе. Если параметр whence опущен, используются глобальные значения по умолчанию типа прокрутки (инициализируется в SESAM_SEEK_NEXT, а устанавливается функцией sesam_seek_row()). Если whence предоставлен, его значение замещает глобальное значение по умолчанию.

offset это необязательный параметр, который вычисляется (и требуется), только если whence это SESAM_SEEK_RELATIVE или SESAM_SEEK_ABSOLUTE. Этот параметр верен только для "scrollable" курсоров.

sesam_fetch_row() извлекает один ряд данных из результата, ассоциированного со специфицированным идентификатором результата. Ряд возвращается как массив (индексированный значениями в диапазоне от 0 до $array["count"]-1). Поля могут быть пустыми, поэтому вы обязаны проверять существование поля РНР-функцией isset(). Тип возвращаемых полей зависит от соответствующего SQL-типа, объявленного для столбца (см. в разделе SESAM. Обзор. о применяемых соглашениях). SESAM "multiple fields/множественные поля" являются "inlined/инлайновыми" и рассматриваются как последовательность столбцов.

Последующие вызовы sesam_fetch_row() должны возвращать следующий ряд (или предыдущий, или n'ный следующий/предыдущий, в зависимости от атрибутов прокрутки) результирующего набора или FALSE, если рядов больше нет.

Пример 1. SESAM. Извлечение рядов.
<?php
$result = sesam_query ("SELECT * FROM phone\n".
                       "  WHERE LASTNAME='".strtoupper($name)."'\n".
                       "  ORDER BY FIRSTNAME", 1);
if (!$result) {
    ... error ...
}
// print the table in backward order
print "<TABLE BORDER>\n";
$row = sesam_fetch_row ($result, SESAM_SEEK_LAST);
while (is_array ($row)) {
    print " <TR>\n";
    for ($col = 0; $col < $row["count"]; ++$col) {
        print "  <TD>".htmlspecialchars ($row[$col])."</TD>\n";
    }
    print " </TR>\n";
    // use implied SESAM_SEEK_PRIOR
    $row = sesam_fetch_row ($result);
}
print "</TABLE>\n";
sesam_free_result ($result);
?>

См. также sesam_fetch_array(), которая возвращает ассоциативный массив, и sesam_fetch_result(), которая возвращает много рядов за один вызов.


Назад Оглавление Вперёд
sesam_fetch_result Вверхsesam_field_array