mysqli_stmt::bind_result

mysqli_stmt_bind_result

(PHP 5, PHP 7)

mysqli_stmt::bind_result -- mysqli_stmt_bind_resultVincula variables a una sentencia preparada para el almacenamiento de resultados

Descripción

Estilo orientado a objetos

mysqli_stmt::bind_result ( mixed &$var1 [, mixed &$... ] ) : bool

Estilo por procedimientos

mysqli_stmt_bind_result ( mysqli_stmt $stmt , mixed &$var1 [, mixed &$... ] ) : bool

Vincula columnas del conjunto de resultados a variables.

Cuando se llama a mysqli_stmt_fetch() para obtener datos, el protocolo cliente/servidor de MySQL coloca los datos de las columnas vinculads en las variables especificadas por var1, ....

Nota:

Observe que todas las columnas deben ser vinculadas después de llamar a mysqli_stmt_execute() y antes de llamar a mysqli_stmt_fetch(). Dependiendo de los tipos de columna las variables pueden cambiar silenciosamente al tipo de PHP correspondiente.

Una columna puede ser vinculada o revinculada en cualquier momento, incluso después de que un conjunto de resultados haya sido parcialmente recuperado. La nueva vinculación toma efecto la siguiente vez que se llame a mysqli_stmt_fetch().

Parámetros

stmt

Sólo estilo por procediminetos: Un identificador de declaraciones devuelto por mysqli_stmt_init().

var1

La variable a vincular.

Valores devueltos

Devuelve TRUE en caso de éxito o FALSE en caso de error.

Ejemplos

Ejemplo #1 Estilo orientado a objetos

<?php
$mysqli 
= new mysqli("localhost""mi_usuario""mi_contraseña""world");

if (
mysqli_connect_errno()) {
    
printf("Falló la conexión: %s\n"mysqli_connect_error());
    exit();
}

/* sentencia preparada */
if ($sentencia $mysqli->prepare("SELECT Code, Name FROM Country ORDER BY Name LIMIT 5")) {
    
$sentencia->execute();

    
/* vincular variables a la sentencia preparada */
    
$sentencia->bind_result($col1$col2);

    
/* obtener valores */
    
while ($sentencia->fetch()) {
        
printf("%s %s\n"$col1$col2);
    }

    
/* cerrar la sentencia */
    
$sentencia->close();
}
/* cerrar la conexión */
$mysqli->close();

?>

Ejemplo #2 Estilo por procedimientos

<?php
$enlace 
mysqli_connect("localhost""mi_usuario""mi_contraseña""world");

/* comprobar la conexión */
if (!$enlace) {
    
printf("Falló la conexión: %s\n"mysqli_connect_error());
    exit();
}

/* sentencia preparada */
if ($sentencia mysqli_prepare($enlace"SELECT Code, Name FROM Country ORDER BY Name LIMIT 5")) {
    
mysqli_stmt_execute($sentencia);

    
/* vincular variables a la sentencia preparada */
    
mysqli_stmt_bind_result($sentencia$col1$col2);

    
/* obtener valores */
    
while (mysqli_stmt_fetch($sentencia)) {
        
printf("%s %s\n"$col1$col2);
    }

    
/* cerrar la sentencia */
    
mysqli_stmt_close($sentencia);
}

/* cerrar la conexión */
mysqli_close($enlace);
?>

El resultado de los ejemplos sería:

AFG Afghanistan
ALB Albania
DZA Algeria
ASM American Samoa
AND Andorra

Ver también