PHP 8.4.2 Released!

mysql_result

(PHP 4, PHP 5)

mysql_resultRetorna dados do resultado

Aviso

Esta extensão tornou-se defasada a partir do PHP 5.5.0 e foi removida no PHP 7.0.0. Em vez disso, as extensões MySQLi ou PDO_MySQL devem ser usadas. Veja também o guia MySQL: escolhendo uma API. Alternativas a esta função incluem:

Descrição

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

Retorna o conteúdo de uma célula do resultado MySQL.

Ao trabalhar com conjuntos grandes de resultados, deve ser considerado o uso de uma das funções que retornam uma linha inteira (especificadas abaixo). Como estas funções retornam o conteúdo de múltiplas células em uma chamada de função, elas são MUITO mais rápidas que mysql_result(). Observe também que especificar um índice numérico para o argumento de campo (field) é muito mais rápido que especificar um argumento com nome de campo ou nome_tabela.nome_de_campo.

Parâmetros

result

O resource do resultado que está sendo avaliado. Este resultado vem de uma chamada a mysql_query().

row

O número da linha do resultado que está sendo recuperado. Os números das linhas começam em 0.

field

O nome ou posição do campo que está sendo recuperado.

Pode ser a posição do campo, o nome do campo ou o nome da tabela mais um ponto mais o nome do campo (nome_tabela.nome_campo). Se o nome da coluna tiver servidor apelidada ('select foo as bar from...'), o apelido deve ser usado no lugar do nome da coluna. Se indefinido, o primeiro campo será recuperado.

Valor Retornado

O conteúdo de uma célula de um conjunto de resultado MySQL em caso de sucesso ou false em caso de falha.

Exemplos

Exemplo #1 Exemplo de mysql_result()

<?php
$link
= mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!
$link) {
die(
'Não foi possível conectar: ' . mysql_error());
}
if (!
mysql_select_db('database_name')) {
die(
'Não foi possível selecionar o banco de dados: ' . mysql_error());
}
$result = mysql_query('SELECT name FROM work.employee');
if (!
$result) {
die(
'Não foi possível consultar:' . mysql_error());
}
echo
mysql_result($result, 2); // mostra o nome do terceiro empregado (employee)

mysql_close($link);
?>

Notas

Nota:

Chamadas a mysql_result() não devem ser misturadas com chamadas a outras funções que lidam com o conjunto de resultados.

Veja Também

adicione uma nota

Notas Enviadas por Usuários (em inglês) 4 notes

up
18
freedman at FreeFormIT dot com
9 years ago
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];
}
}
up
1
bob dot schuon at loungelizard dot com
5 years ago
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];
}
up
1
mark at pnod dot co dot uk
1 year ago
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];
up
-3
v dot teemu at gmail dot com
8 years ago
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]);
}
To Top