ifx_fetch_row

ifx_fetch_row -- Obtiene registros como un array (vector) enumerado

Descripción

array ifx_fetch_row ( int result_id [, mixed position])

Devuelve un array ( vector ) correspondiente a la fila leída o FALSE si no hay más registros .

Las columnas blob son devueltas como identificadores de blob enteros ( integer ) para usarlos con ifx_get_blob( ) a menos que hayas usado ifx_textasvarchar(1 ) o ifx_byteasvarchar(1 ) , en cuyo caso los blobs son devueltos como cadenas de texto . Devuelve FALSE si hubo error .

result_id es un identificador válido del resultado de ifx_query( ) o ifx_prepare( ) (sólo para consultas de selección ) .

position es un parámetro opcional para una operación de lectura sobre un cursor de tipo " scroll" : "NEXT " (siguiente) , "PREVIOUS " (anterior) , "CURRENT " (actual) , "FIRST " (primero) , "LAST " (último ) o un número . Si se especifica un número , un registro concreto es leído . Este parámetro opcional es sólo válido para cursores de tipo scroll .

ifx_fetch_row( ) lee el contenido de un registro de la consulta representada por el identificador de resultado indicado . La fila ( registro ) es devuelta en un array . Cada columna es guarda en un array , empezando éste desde cero .

Las llamadas posteriores a ifx_fetch_row( ) devolverán el registro siguiente en el resultado de la consulta , o FALSE si no hay más filas .

Ejemplo 1 . Leer registros

 
$rid

 
=

 
ifx_prepare

 
(

 
"select

 
*

 
from

 
emp

 
where

 
name

 
like

 
"

 
.

 
$name

 
,

 
$connid

 
,

 
IFX_SCROLL)

 
;

 
if

 
(

 
!

 
$rid

 
)

 
{

 
..

 
.

 
error

 
..

 
.

 
}

 
$rowcount

 
=

 
ifx_affected_rows($rid)

 
;

 
if

 
($rowcount

 
1000

 
)

 
{

 
printf

 
("Too

 
many

 
rows

 
in

 
result

 
set

 
(%d)\n

 
br

 
"

 
,

 
$rowcount)

 
;

 
/

 
/

 
Demasiados

 
registros

 
en

 
el

 
resultado

 
die

 
("Please

 
restrict

 
your

 
query

 
br

 
\n")

 
;

 
/

 
/

 
Por

 
favor

 
,

 
restringe

 
tu

 
consulta

 
}

 
if

 
(

 
!

 
ifx_do

 
($rid)

 
)

 
{

 
..

 
.

 
error

 
..

 
.

 
}

 
$row

 
=

 
ifx_fetch_row

 
($rid

 
,

 
"NEXT")

 
;

 
while

 
(is_array($row)

 
)

 
{

 
for(reset($row)

 
;

 
$fieldname=key($row)

 
;

 
next($row)

 
)

 
{

 
$fieldvalue

 
=

 
$row[$fieldname]

 
;

 
printf

 
("%s

 
=

 
%s

 
,"

 
,

 
$fieldname

 
,

 
$fieldvalue)

 
;

 
    }

 
printf("\n

 
br

 
")

 
;

 
$row

 
=

 
ifx_fetch_row

 
($rid

 
,

 
"NEXT")

 
;

 
}

 
ifx_free_result

 
($rid)

 
;