mysql_result

(PHP 4, PHP 5)

mysql_resultВозвращает данные результата запроса

Описание

string mysql_result ( resource $result , int $row [, mixed $field = 0 ] )

Возвращает содержимое одного поля из набора результата MySQL.

Работая с большими результатами запросов, следует использовать одну из функций, обрабатывающих сразу целый ряд результата (указаны ниже). Так как эти функции возвращают значение нескольких ячеек сразу, они НАМНОГО быстрее mysql_result(). Кроме того, учтите, что указание численного смещения работает намного быстрее, чем указание колонки, или колонки с таблицей через точку.

Список параметров

result

Обрабатываемый результат запроса. Этот результат может быть получен с помощью функции mysql_query().

row

Номер получаемого ряда из результата. Нумерация рядов начинается с 0.

field

Имя или смещение получаемого поля.

Может быть как смещением поля, именем поля, так и именем поля вместе с таблицей (таблица.поле). Если для поля был указан псевдоним ('select foo as bar from...'), используйте его вместо имени самого поля. Если не указан, возвращается первое поле.

Возвращаемые значения

Содержимое одного поля из набора результата MySQL в случае успеха, или FALSE в случае ошибки.

Примеры

Пример #1 Пример использования mysql_result()

<?php
$link 
mysql_connect('localhost''mysql_user''mysql_password');
if (!
$link) {
    die(
'Ошибка соединения: ' mysql_error());
}
if (!
mysql_select_db('database_name')) {
    die(
'Ошибка выбора базы данных: ' mysql_error());
}
$result mysql_query('SELECT name FROM work.employee');
if (!
$result) {
    die(
'Ошибка выполнения запроса:' mysql_error());
}
echo 
mysql_result($result2); // выведет имя третьего сотрудника

mysql_close($link);
?>

Примечания

Замечание:

Вызовы функции mysql_result() не должны смешиваться с другими функциями, работающими с результатом запроса.

Смотрите также

  • mysql_fetch_row() - Обрабатывает ряд результата запроса и возвращает массив с числовыми индексами
  • mysql_fetch_array() - Обрабатывает ряд результата запроса, возвращая ассоциативный массив, численный массив или оба
  • mysql_fetch_assoc() - Возвращает ряд результата запроса в качестве ассоциативного массива
  • mysql_fetch_object() - Обрабатывает ряд результата запроса и возвращает объект

Коментарии

If you want to fetch the result from a mysql query similar to one of these two queries...

$query = mysql_query("SELECT COUNT(*) FROM table");
$query = mysql_query("SELECT LAST_INSERT_ID()");

... you would use mysql_result() like shown below to retrieve the output as an int.

$result = mysql_result($query, 0, 0);
2003-08-23 13:42:47
http://php5.kiev.ua/manual/ru/function.mysql-result.html
mysql_result() will throw E_WARNING if mysql_query returns 0 rows. This is unlike any of the mysql_fetch_* functions so be careful of this if you have E_WARNING turned on in error_reporting(). You might want to check mysql_num_rows() before calling mysql_result()
2008-10-06 17:49:54
http://php5.kiev.ua/manual/ru/function.mysql-result.html
The warning against mixing the use of mysql_result with other result set functions is a bit generic. More specifically, mysql_result alters the result set's internal row pointer (at least in a LAMP environment). This is anything but obvious as the nature of the function is random access for grabbing a quick byte. Using mysql_data_seek after some mysql_result calls, before going into a mysql_fetch_array loop, will set things straight.
2011-04-29 09:30:02
http://php5.kiev.ua/manual/ru/function.mysql-result.html
An example of how to easily port this to mysqli would be nice instead of some links to functions that don't really do what this function does.
2014-06-11 06:30:38
http://php5.kiev.ua/manual/ru/function.mysql-result.html
here's a rough replacement using mysqli:

if (!function_exists('mysql_result')) {
    function mysql_result($result, $number, $field=0) {
        mysqli_data_seek($result, $number);
        $row = mysqli_fetch_array($result);
        return $row[$field];
    }
}
2015-02-08 12:08:50
http://php5.kiev.ua/manual/ru/function.mysql-result.html
I was also looking for mysqli replacement for getting first row, when query is known to return just 1 value. It seems this is simple:

echo(mysql_result($result, 0));

becomes

echo($result->fetch_row()[0]);

alternatively

if ($row = $result->fetch_row()) {
  echo($row[0]);
}
2016-09-06 09:18:21
http://php5.kiev.ua/manual/ru/function.mysql-result.html
This function accounts for the ability of the original function to accept "table_name.field_name" entries as well as just the field name:

function mysqli_result($res, $row, $field=0) {
    $result->data_seek($row);
    $data = $result->fetch_array();
    $field_name = $field;
    if ( is_string($field) ) {
      $fields_array = explode(".", $field);
      $array_len = count($fields_array);
      if ($array_len > 1) {
        $field_name = $fields_array[array_len - 1];
      } else {
         $field_name = $fields_array[0];
      }
    }
   
    return $data[$field_name];
}
2019-11-22 19:32:26
http://php5.kiev.ua/manual/ru/function.mysql-result.html
To replace a row count  e.g.

       $querystring = "SELECT COUNT(*) FROM table WHERE column1 = 'EXAMPLE'";
       $total_records = mysql_result(mysql_query($querystring,$connection),0);

use mysqli_fetch_row :

       $querystring = "SELECT COUNT(*) FROM table WHERE column1 = 'EXAMPLE'";
       $rowcount = mysqli_fetch_row(mysqli_query($connection,$querystring));
       $total_records = $rowcount[0];
2023-01-04 18:57:34
http://php5.kiev.ua/manual/ru/function.mysql-result.html

    Поддержать сайт на родительском проекте КГБ