Manuel PHP
mysqli_stmt::bind_param
mysqli_stmt_bind_param
(PHP 5)
mysqli_stmt::bind_param -- mysqli_stmt_bind_param — Lie des variables à une requête MySQL
Description
Style orienté objet (méthode) :
Style procédural :
Sert à lier des variables à une requête MySQL préparée par mysqli_prepare().
Note: Si la taille des données dépasse la taille maximal d'un paquet, (max_allowed_packet), vous devez spécifier le caractère b dans le paramètre types et utiliser la fonction mysqli_stmt_send_long_data() pour envoyer le message par paquets.
Liste de paramètres
- stmt
-
Style procédural uniquement : Un identifiant de requête retourné par la fonction mysqli_stmt_init().
- types
-
Une chaîne de caractères qui contient un ou plusieurs caractères qui spécifient le type de la variable à lier :
Caractère de spécification des types Caractère Description i correspond à une variable de type entier d correspond à une variable de type nombre à virgule flottante s correspond à une variable de type chaîne de caractères b correspond à une variable de type BLOB, qui sera envoyé par paquets - var1
-
Le nombre de variables et la longueur de la chaîne de caractères types doivent correspondre aux paramètres de la requête.
Valeurs de retour
Cette fonction retourne TRUE en cas de succès, FALSE en cas d'échec.
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();
- }
- $stmt = $mysqli->prepare("INSERT INTO CountryLanguage VALUES (?, ?, ?, ?)");
- $stmt->bind_param('sssd', $code, $language, $official, $percent);
- $code = 'DEU';
- $language = 'Bavarian';
- $official = "F";
- $percent = 11.2;
- /* Exécution de la requête */
- $stmt->execute();
- printf("%d ligne insérée.\n", $stmt->affected_rows);
- /* Fermeture du traitement */
- $stmt->close();
- /* Nettoyage de la table CountryLanguage */
- $mysqli->query("DELETE FROM CountryLanguage WHERE Language='Bavarian'");
- printf("%d ligne effacée.\n", $mysqli->affected_rows);
- /* 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();
- }
- $stmt = mysqli_prepare($link, "INSERT INTO CountryLanguage VALUES (?, ?, ?, ?)");
- mysqli_stmt_bind_param($stmt, 'sssd', $code, $language, $official, $percent);
- $code = 'DEU';
- $language = 'Bavarian';
- $official = "F";
- $percent = 11.2;
- /* Exécution de la requête */
- mysqli_stmt_execute($stmt);
- printf("%d ligne insérée.\n", mysqli_stmt_affected_rows($stmt));
- /* Fermeture du traitement */
- mysqli_stmt_close($stmt);
- /* Nettoyage de la table CountryLanguage */
- mysqli_query($link, "DELETE FROM CountryLanguage WHERE Language='Bavarian'");
- printf("%d ligne effacée.\n", mysqli_affected_rows($link));
- /* Fermeture de la connexion */
- mysqli_close($link);
- ?>
L'exemple ci-dessus va afficher :
Remonter 
