Documentation PHP

mysqli_stmt::prepare

mysqli_stmt_prepare

(PHP 5)

mysqli_stmt_prepare — Prépare une requête SQL pour l'exécution

Description

Style orienté objet (méthode) :

mixed mysqli_stmt::prepare ( string $query )

Style procédural :

bool mysqli_stmt_prepare ( mysqli_stmt $stmt , string $query )

Prépare la requête SQL query , pour la session de travail stmt .

Les variables SQL doivent être associées à une variable PHP à l'aide de la fonction mysqli_stmt_bind_param() et/ou mysqli_stmt_bind_result(), avant d'exécuter la requête.

Liste de paramètres

stmt

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

query

La requête, sous forme de chaîne. Elle doit être constituée d'une commande SQL valide et unique.

Ce paramètre peut inclure une ou plusieurs variables SQL, en utilisant des points d'interrogation (?) aux bons endroits.

Note: Il ne faut pas ajouter de point-virgule ou de \g à la fin de la requête.

Note: Les variables SQL ne sont possibles que dans certaines clauses de la requête SQL. Par exemple, elles peuvent être placées dans des clause VALUES() d'une requête INSERT (pour spécifier une valeur à insérer), ou dans une clause de condition WHERE.
Cependant, elles ne sont pas autorisées pour les identifiants (de tables ou de colonnes), dans les listes de colonnes d'un SELECT, ou pour spécifier des opérateurs comme =. Cette dernière restriction est liée au fait qu'il est impossible de déterminer le type. En général, les variables SQL ne sont valides que dans les commandes de manipulation de données ("Data Manipulation Language" (DML)), et non dans les structures du langages SQL ("Data Definition Language" (DDL)).

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érifie la connexion */
if (mysqli_connect_errno()) {
    
printf("Échec de la connexion : %s\n"mysqli_connect_error());
    exit();
}

$city "Amersfoort";

/* Création d'une requête préparée */
$stmt =  $mysqli->stmt_init();
if (
$stmt->prepare("SELECT District FROM City WHERE Name=?")) {

    
/* Association des variables SQL */
    
$stmt->bind_param("s"$city);

    
/* Exécution de la requête */
    
$stmt->execute();

    
/* Association des variables de résultats */
    
$stmt->bind_result($district);

    
/* Lecture des valeurs */
    
$stmt->fetch();

    
printf("%s est dans la région de %s\n"$city$district);

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

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

Exemple #2 Style procédural

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

/* Vérifie la connexion */
if (mysqli_connect_errno()) {
    
printf("Échec de la connexion : %s\n"mysqli_connect_error());
    exit();
}

$city "Amersfoort";

/* Création d'une requête préparée */
$stmt mysqli_stmt_init($link);
if (
mysqli_stmt_prepare($stmt'SELECT District FROM City WHERE Name=?')) {

    
/* Association des variables SQL */
    
mysqli_stmt_bind_param($stmt"s"$city);

    
/* Exécution de la requête */
    
mysqli_stmt_execute($stmt);

    
/* Association des variables de résultats */
    
mysqli_stmt_bind_result($stmt$district);

    
/* Lecture des valeurs */
    
mysqli_stmt_fetch($stmt);

    
printf("%s est dans la région de %s\n"$city$district);

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

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

L'exemple ci-dessus va afficher :

Amersfoort est dans la région de Utrecht


Ceci n'est pas la documentation originale du langage de programmation php, pour y accéder visiter le site www.php.net

Support du web, outils, services, compteurs, scripts, générateurs et autres outils pour les webmasters gratuitement à 100%
Page générée en 0.002406 secondes.