mysqli_stmt_execute,

(PHP 5)

mysqli_stmt_execute, stmt->execute() — Exécute une requête préparée

Description

Style procédural

bool mysqli_stmt_execute ( mysqli_stmt $stmt )

Style orienté objet (méthode)

class mysqli_stmt {
bool execute ( void )
}

Exécute une requête qui a été préalablement préparée en utilisant la fonction mysqli_prepare() , grâce à la ressource stmt . Lors de l'exécution, toutes les variables de la requête seront remplacées par les données appropriées.

Si la requête est UPDATE, DELETE ou INSERT, le nombre total de lignes affectées est disponible via la fonction mysqli_stmt_affected_rows() . De la même façon, si la fonction génère un résultat, il sera disponible via la fonction mysqli_stmt_fetch() .

Note: Lors de l'utilisation de mysqli_stmt_execute() , mysqli_stmt_fetch() doit être utilisée pour lire les données avant de lancer une autre requête.

Liste de paramètres

stmt

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

Valeurs de retour

Cette fonction retourne TRUE en cas de succès, FALSE en cas d'échec.

Exemples

Exemple 1718. 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();
}

$mysqli -> query ( "CREATE TABLE ma_Ville LIKE Ville" );

/* Préparation de la commande d'insertion */
$query  "INSERT INTO ma_ville (Nom, Pays, Region) VALUES (?,?,?)" ;
$stmt  $mysqli -> prepare ( $query );

$stmt -> bind_param ( "sss" $val1 $val2 $val3 );

$val1  'Stuttgart' ;
$val2  'DEU' ;
$val3  'Baden-Wuerttemberg' ;

/* Exécution de la commande */
$stmt -> execute ();

$val1  'Bordeaux' ;
$val2  'FRA' ;
$val3  'Aquitaine' ;

/* Exécution de la commande */
$stmt -> execute ();

/* Fermeture de la commande */
$stmt -> close ();

/* Lit toutes les données de ma_ville */
$query  "SELECT Nom, Pays, Region FROM ma_ville" ;
if (
$result  $mysqli -> query ( $query )) {
    while (
$row  $result -> fetch_row ()) {
        
printf ( "%s (%s,%s)\n" $row [ 0 ],  $row [ 1 ],  $row [ 2 ]);
    }
    
/* Libère de résultat */
    
$result -> close ();
}

/* Suppression de la table */
$mysqli -> query ( "DROP TABLE ma_ville" );

/* Fermeture de la connexion */
$mysqli -> close ();
?>

Exemple 1719. Style procédural

<?php
$link 
mysqli_connect ( "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();
}

mysqli_query ( $link "CREATE TABLE ma_ville LIKE Ville" );

/* Préparation de la commande d'insertion */
$query  "INSERT INTO ma_ville (Nom, Pays, Region) VALUES (?,?,?)" ;
$stmt  mysqli_prepare ( $link $query );

mysqli_stmt_bind_param ( $stmt "sss" $val1 $val2 $val3 );

$val1  'Stuttgart' ;
$val2  'DEU' ;
$val3  'Baden-Wuerttemberg' ;

/* Exécution de la commande */
mysqli_stmt_execute ( $stmt );

$val1  'Bordeaux' ;
$val2  'FRA' ;
$val3  'Aquitaine' ;

/* Exécution de la commande */
mysqli_stmt_execute ( $stmt );

/* Fermeture de la commande */
mysqli_stmt_close ( $stmt );

/* Lit toutes les données de ma_ville */
$query  "SELECT Nom, Pays, Region FROM ma_ville" ;
if (
$result  mysqli_query ( $link $query )) {
    while (
$row  mysqli_fetch_row ( $result )) {
        
printf ( "%s (%s,%s)\n" $row [ 0 ],  $row [ 1 ],  $row [ 2 ]);
    }
    
/* Libère de résultat */
    
mysqli_free_result ( $result );
}

/* Suppression de la table */
mysqli_query ( $link "DROP TABLE ma_ville" );

/* Fermeture de la connexion */
mysqli_close ( $link );
?>

L'exemple ci-dessus va afficher :


Stuttgart (DEU,Baden-Wuerttemberg)
Bordeaux (FRA,Aquitaine)

  

Voir aussi

mysqli_prepare()
mysqli_stmt_bind_param()