mysql_result

(PHP 4, PHP 5, PECL mysql:1.0)

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

Описание

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

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

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

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

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

<?php
    $link 
mysql_connect("localhost""mysql_user""mysql_password")
            or die(
"Could not connect: " mysql_error());
 
    
$result mysql_query("SELECT name FROM work.employee")
            or die(
"Could not query: " mysql_error());
            
    echo 
mysql_result($result,2); // outputs third employee's name
    
    
mysql_close($link);
?>

Рекомендуемые скоростные альтернативы : 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

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