Lie des variables à un jeu de résultats

# mysqli_stmt::bind_result

# mysqli_stmt_bind_result

(PHP 5, PHP 7)

mysqli_stmt::bind_result -- mysqli_stmt_bind_result — Lie des variables à un jeu de résultats

### Description

Style orienté objet

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

Style procédural

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

Associe des colonnes d'un résultat à des variables.

Lorsque mysqli_stmt_fetch() est appelée pour lire des valeurs, le protocole MySQL place les données dans les variables spécifiées dans le paramètre `var1, ...`.

> Note:

> Notez que toutes les colonnes doivent être liées après l'exécution de la fonction mysqli_stmt_execute() et avant l'appel à la fonction mysqli_stmt_fetch(). En fonction du type de valeur de la colonne, le type de variable PHP peut être automatiquement modifié.

> Une colonne peut être associée ou réassociée à tout moment, même après une lecture partielle du résultat. La nouvelle association prend effet au prochain appel de mysqli_stmt_fetch().

### Liste de paramètres

`stmt`

  Style procédural uniquement : Un identifiant de requête retourné par la fonction mysqli_stmt_init().

`var1`

  La variable à lier.

### Valeurs de retour

Cette fonction retourne `TRUE` en cas de succès ou `FALSE` si une erreur survient.

### Exemples

Exemple #1 Style orienté objet

`<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
/* Vérification de la connexion */
if (mysqli_connect_errno()) {
printf("Échec de la connexion : %s\n", mysqli_connect_error());
exit();
}
/* Préparation de la requête */
if ($stmt = $mysqli->prepare("SELECT Code, Name FROM Country ORDER BY Name LIMIT 5")) {
$stmt->execute();
/* Insertion de la variable */
$stmt->bind_result($col1, $col2);
/* Récupération des valeurs */
while ($stmt->fetch()) {
printf("%s %s\n", $col1, $col2);
}
/* Fermeture du traitement */
$stmt->close();
}
/* Fermeture de la connexion */
$mysqli->close();
?>`

Exemple #2 Style procédural

`<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");
/* Vérification de la connexion */
if (!$link) {
printf("Échec de la connexion : %s\n", mysqli_connect_error());
exit();
}
/* Préparation de la requête */
if ($stmt = mysqli_prepare($link, "SELECT Code, Name FROM Country ORDER BY Name LIMIT 5")) {
mysqli_stmt_execute($stmt);
/* Insertion de la variable */
mysqli_stmt_bind_result($stmt, $col1, $col2);
/* Récupération des valeurs */
while (mysqli_stmt_fetch($stmt)) {
printf("%s %s\n", $col1, $col2);
}
/* Fermeture du traitement */
mysqli_stmt_close($stmt);
}
/* Fermeture de la connexion */
mysqli_close($link);
?>`

L'exemple ci-dessus va afficher :

    AFG Afghanistan
    ALB Albania
    DZA Algeria
    ASM American Samoa
    AND Andorra

### Voir aussi

- mysqli_stmt_get_result() - Récupère un jeu de résultats depuis une requête préparée
- mysqli_stmt_bind_param() - Lie des variables à une requête MySQL
- mysqli_stmt_execute() - Exécute une requête préparée
- mysqli_stmt_fetch() - Lit des résultats depuis une requête MySQL préparée dans des variables liées
- mysqli_prepare() - Prépare une requête SQL pour l'exécution
- mysqli_stmt_prepare() - Prépare une requête SQL pour l'exécution
- mysqli_stmt_init() - Initialise une commande MySQL
- mysqli_stmt_errno() - Retourne un code erreur pour la dernière requête
- mysqli_stmt_error() - Retourne une description de la dernière erreur de traitement