8.81 Extension MySQL améliorée
8 Référence des fonctions
Manuel PHP
. Introduction . Pré-requis . Installation . Configuration à l'exécution . Classes pré-définies . Constantes pré-définies . mysqli_affected_rows . mysqli_autocommit . mysqli_bind_param . mysqli_bind_result . mysqli_change_user . mysqli_character_set_name . mysqli_client_encoding . mysqli_close . mysqli_commit . mysqli_connect_errno . mysqli_connect_error . mysqli_connect . mysqli_data_seek . mysqli_debug . mysqli_disable_reads_from_master . mysqli_disable_rpl_parse . mysqli_dump_debug_info . mysqli_embedded_connect . mysqli_enable_reads_from_master . mysqli_enable_rpl_parse . mysqli_errno . mysqli_error . mysqli_escape_string . mysqli_execute . mysqli_fetch_array . mysqli_fetch_assoc . mysqli_fetch_field_direct . mysqli_fetch_field . mysqli_fetch_fields . mysqli_fetch_lengths . mysqli_fetch_object . mysqli_fetch_row . mysqli_fetch . mysqli_field_count . mysqli_field_seek . mysqli_field_tell . mysqli_free_result . mysqli_get_client_info . mysqli_get_client_version . mysqli_get_host_info . mysqli_get_metadata . mysqli_get_proto_info . mysqli_get_server_info . mysqli_get_server_version . mysqli_info . mysqli_init . mysqli_insert_id . mysqli_kill . mysqli_master_query . mysqli_more_results . mysqli_multi_query . mysqli_next_result . mysqli_num_fields . mysqli_num_rows . mysqli_options . mysqli_param_count . mysqli_ping . mysqli_prepare ->mysqli_query . mysqli_real_connect . mysqli_real_escape_string . mysqli_real_query . mysqli_report . mysqli_rollback . mysqli_rpl_parse_enabled . mysqli_rpl_probe . mysqli_rpl_query_type . mysqli_select_db . mysqli_send_long_data . mysqli_send_query . mysqli_server_end . mysqli_server_init . mysqli_set_charset . mysqli_set_opt . mysqli_sqlstate . mysqli_ssl_set . mysqli_stat . mysqli_stmt_affected_rows . mysqli_stmt_bind_param . mysqli_stmt_bind_result . mysqli_stmt_close . mysqli_stmt_data_seek . mysqli_stmt_errno . mysqli_stmt_error . mysqli_stmt_execute . mysqli_stmt_fetch . mysqli_stmt_free_result . mysqli_stmt_init . mysqli_stmt_num_rows . mysqli_stmt_param_count . mysqli_stmt_prepare . mysqli_stmt_reset . mysqli_stmt_result_metadata . mysqli_stmt_send_long_data . mysqli_stmt_sqlstate . mysqli_stmt_store_result . mysqli_store_result . mysqli_thread_id . mysqli_thread_safe . mysqli_use_result . mysqli_warning_count
|
8.81.65 mysqli_query()mysqli->query()Exécute une requête sur la base de données[ Exemples avec mysqli_query ] PHP 5
Style procédural
mixed
mysqli_query (
mysqli
link
,
string
query
,
int
resultmode
)
Style orienté objet (méthode)
mysqli
mixed
query (
string
query
,
int
resultmode
)
La fonction
mysqli_query
est utilisée pour simplifier
l'acte d'exécuter une requête sur la connexion à la base de données
représentée par le paramètre
link
.
En termes de fonctionnalités, utiliser cette fonction revient à appeler
mysqli_real_query
suivie de
mysqli_use_result
ou
mysqli_store_result
où
query
est la requête elle-même et
resultmode
la
constante
MYSQLI_USE_RESULT
ou
MYSQLI_STORE_RESULT
selon le comportement
voulu. Par défaut, si
resultmode
n'est pas renseigné,
c'est la constante
MYSQLI_STORE_RESULT
qui est utilisée.
Si vous exécutez
mysqli_query
avec le paramètre
resultmode
valant
MYSQLI_USE_RESULT
,
tous les appels suivants retourneront l'erreur
Commands out of sync
à moins que vous appeliez
mysqli_free_result
.
Cette fonction retourne
TRUE
en cas de
succès,
FALSE
en cas d'échec.
Pour
SELECT, SHOW, DESCRIBE
ou
EXPLAIN
mysqli_query
retournera un résultat sous
la forme d'un objet.
| Style orienté objet |
<?php $mysqli = new mysqli("localhost", "my_user", "my_password", "world");
/* Vérification de la connexion */ if (mysqli_connect_errno()) { printf("Echec de la connexion : %s\n", mysqli_connect_error()); exit(); }
/* "Create table" ne retournera aucun jeu de résultats */ if ($mysqli->query("CREATE TEMPORARY TABLE myCity LIKE City") === TRUE) { printf("Table myCity créée avec succès.\n"); }
/* Requète "Select" retourne un jeu de résultats */ if ($result = $mysqli->query("SELECT Name FROM City LIMIT 10")) { printf("Select a retourné %d lignes.\n", $result->num_rows);
/* Libération du jeu de résultats */ $result->close(); }
/* Si nous avons à récupérer beaucoup de données, nous utilisons MYSQLI_USE_RESULT */ if ($result = $mysqli->query("SELECT * FROM City", MYSQLI_USE_RESULT)) {
/* Notez que nous ne pouvons exécuter aucune fonction qui agit sur le serveur tant que le jeu de résultats est clos. Tous les appels retourneront un 'out of sync' */ if (!$mysqli->query("SET @a:='this will not work'")) { printf("Erreur : %s\n", $mysqli->error); } $result->close(); }
$mysqli->close(); ?>
|
| Style procédural |
<?php $link = mysqli_connect("localhost", "my_user", "my_password", "world");
/* Vérification de la connexion */ if (mysqli_connect_errno()) { printf("Echec de la connexion : %s\n", mysqli_connect_error()); exit(); }
/* "Create table" ne retournera aucun jeu de résultats */ if (mysqli_query($link, "CREATE TEMPORARY TABLE myCity LIKE City") === TRUE) { printf("Table myCity créée avec succès.\n"); }
/* Requète "Select" retourne un jeu de résultats */ if ($result = mysqli_query($link, "SELECT Name FROM City LIMIT 10")) { printf("Select a retourné %d lignes.\n", mysqli_num_rows($result));
/* Libération du jeu de résultats */ mysqli_free_result($result); }
/* Si nous avons à récupérer beaucoup de données, nous utilisons MYSQLI_USE_RESULT */ if ($result = mysqli_query($link, "SELECT * FROM City", MYSQLI_USE_RESULT)) {
/* Notez que nous ne pouvons exécuter aucune fonction qui agit sur le serveur tant que le jeu de résultats est clos. Tous les appels retourneront un 'out of sync' */ if (!mysqli_query($link, "SET @a:='this will not work'")) { printf("Erreur : %s\n", mysqli_error($link)); } mysqli_free_result($result); }
mysqli_close($link); ?>
|
L'exemple ci-dessus va afficher :
Table myCity créée avec succès.
Select a retourné 10 lignes.
Erreur: Commands out of sync; You can't run this command now
mysqli_real_query
,
mysqli_multi_query
et
mysqli_free_result
.
|