MySQLi_STMT
PHP Manual

mysqli_stmt::bind_result

mysqli_stmt_bind_result

(PHP 5)

mysqli_stmt::bind_result -- mysqli_stmt_bind_resultPassa variáveis para um preparado comando por resultado armazenado

Descrição

Modo orientado a objeto (método):

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

Modo procedural:

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

Passa colunas em um conjunto de resultados para variáveis.

Quando mysqli_stmt_fetch() é chamada para obter dados, o MySQL client/server protocol coloca a informação das colunas nas especificadas variáveis var1, ....

Nota:

Note que todas as colunas precisam ser determinadas antes de mysqli_stmt_execute() e antes de chamar mysqli_stmt_fetch(). Dependendo do tipo da coluna de determinada variável pode silenciosamente mudar para o tipo do PHP correspondente.

Uma coluna pode ser especificada ou não especificada em dado tempo, até mesmo depois de um conjunto de resultado tem sido parcialmente recebido. A nova passagem pega o efeito da última chamada a mysqli_stmt_fetch().

Parâmetros

stmt

Procedural style only: A statement identifier returned by mysqli_stmt_init().

var1

A variável a ser determinada.

Valor Retornado

Retorna TRUE em caso de sucesso ou FALSE em caso de falha.

Exemplos

Exemplo #1 Modo orientado a objeto

<?php
$mysqli 
= new mysqli("localhost""my_user""my_password""world");

if (
mysqli_connect_errno()) {
    
printf("Connect failed: %s\n"mysqli_connect_error());
    exit();
}

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

    
/* bind variables to prepared statement */
    
$stmt->bind_result($col1$col2);

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

    
/* close statement */
    
$stmt->close();
}
/* close connection */
$mysqli->close();

?>

Exemplo #2 Modo procedural

<?php
$link 
mysqli_connect("localhost""my_user""my_password""world");

/* check connection */
if (!$link) {
    
printf("Connect failed: %s\n"mysqli_connect_error());
    exit();
}

/* prepare statement */
if ($stmt mysqli_prepare($link"SELECT Code, Name FROM Country ORDER BY Name LIMIT 5")) {
    
mysqli_stmt_execute($stmt);

    
/* bind variables to prepared statement */
    
mysqli_stmt_bind_result($stmt$col1$col2);

    
/* fetch values */
    
while (mysqli_stmt_fetch($stmt)) {
        
printf("%s %s\n"$col1$col2);
    }

    
/* close statement */
    
mysqli_stmt_close($stmt);
}

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

AFG Afghanistan
ALB Albania
DZA Algeria
ASM American Samoa
AND Andorra

Veja Também


MySQLi_STMT
PHP Manual