(PECL maxdb:1.0-7.6.00.38)
maxdb_stmt_execute, stmt->execute — Exécute une requête préparée
Style procédural
bool maxdb_stmt_execute ( resource $stmt )Style orienté objet (méthode)
class stmt {maxdb_stmt_execute() exécute une requête qui a été préparée auparavant en utilisant la fonction maxdb_prepare() représenté par la ressource stmt . Lors de l'exécution, tous les marqueurs existants seront automatiquement remplacés par les données appropriées.
Si la requête est du type UPDATE, DELETE ou INSERT, le nombre total de lignes affectées peut être déterminé en utilisant la fonction maxdb_stmt_affected_rows() . De même, si la requête rapporte un jeu de résultats, la fonction maxdb_fetch() est utilisée.
Note: Lors de l'utilisation de la fonction maxdb_stmt_execute() , la fonction maxdb_fetch() doit être utilisée pour récupérer les données avant d'effectuer toute autre requête additionnelle.
Cette fonction retourne TRUE en cas de succès, FALSE en cas d'échec.
Exemple 1416. Style orienté objet
<?php
$maxdb
= new
maxdb
(
"localhost"
,
"MONA"
,
"RED"
,
"DEMODB"
);
/* Vérification de la connexion */
if (
maxdb_connect_errno
()) {
printf
(
"Echec de la connexion : %s\n"
,
maxdb_connect_error
());
exit();
}
$maxdb
->
query
(
"CREATE TABLE temp.mycity LIKE hotel.city"
);
/* Prépare une requête d'insertion */
$query
=
"INSERT INTO temp.mycity (zip, name, state) VALUES (?,?,?)"
;
$stmt
=
$maxdb
->
prepare
(
$query
);
$stmt
->
bind_param
(
"sss"
,
$val1
,
$val2
,
$val3
);
$val1
=
'11111'
;
$val2
=
'Georgetown'
;
$val3
=
'NY'
;
/* Exécute la requête */
$stmt
->
execute
();
$val1
=
'22222'
;
$val2
=
'Hubbatown'
;
$val3
=
'CA'
;
/* Exécute la requête */
$stmt
->
execute
();
/* Fermeture de la requête */
$stmt
->
close
();
/* Récupère toutes les lignes depuis myCity */
$query
=
"SELECT zip, name, state FROM temp.mycity"
;
if (
$result
=
$maxdb
->
query
(
$query
)) {
while (
$row
=
$result
->
fetch_row
()) {
printf
(
"%s (%s,%s)\n"
,
$row
[
0
],
$row
[
1
],
$row
[
2
]);
}
/* Libération du jeu de résultats */
$result
->
close
();
}
/* Effacement de la table */
$maxdb
->
query
(
"DROP TABLE temp.mycity"
);
/* Fermeture de la connexion */
$maxdb
->
close
();
?>
Exemple 1417. Style procédural
<?php
$link
=
maxdb_connect
(
"localhost"
,
"MONA"
,
"RED"
,
"DEMODB"
);
/* Vérification de la connexion */
if (
maxdb_connect_errno
()) {
printf
(
"Echec de la connexion : %s\n"
,
maxdb_connect_error
());
exit();
}
maxdb_query
(
$link
,
"CREATE TABLE temp.mycity LIKE hotel.city"
);
/* Prépare une requête d'insertion */
$query
=
"INSERT INTO temp.mycity (zip, name, state) VALUES (?,?,?)"
;
$stmt
=
maxdb_prepare
(
$link
,
$query
);
maxdb_stmt_bind_param
(
$stmt
,
"sss"
,
$val1
,
$val2
,
$val3
);
$val1
=
'11111'
;
$val2
=
'Georgetown'
;
$val3
=
'NY'
;
/* Exécute la requête */
maxdb_stmt_execute
(
$stmt
);
$val1
=
'22222'
;
$val2
=
'Hubbatown'
;
$val3
=
'CA'
;
/* Exécute la requête */
maxdb_stmt_execute
(
$stmt
);
/* Fermeture de la requête */
maxdb_stmt_close
(
$stmt
);
/* Récupère toutes les lignes depuis myCity */
$query
=
"SELECT zip, name, state FROM temp.mycity"
;
if (
$result
=
maxdb_query
(
$link
,
$query
)) {
while (
$row
=
maxdb_fetch_row
(
$result
)) {
printf
(
"%s (%s,%s)\n"
,
$row
[
0
],
$row
[
1
],
$row
[
2
]);
}
/* Libération du jeu de résultats */
maxdb_free_result
(
$result
);
}
/* Effacement de la table */
maxdb_query
(
$link
,
"DROP TABLE temp.mycity"
);
/* Fermeture de la connexion */
maxdb_close
(
$link
);
?>
L'exemple ci-dessus va afficher :
11111 (Georgetown,NY) 22222 (Hubbatown,CA)