English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutoriel PHP de base

Tutoriel PHP avancé

PHP et MySQL

Manuel de référence PHP

Utilisation et exemples de la fonction PHP mysqli_affected_rows()

PHP MySQLi Reference Manual

La fonction mysqli_affected_rows() récupère le nombre de lignes affectées par l'opération MySQL précédente

Définition et utilisation

mysqli_affected_rows()La fonction a pour objectif : retourner le nombre de lignes affectées par l'opération précédente (INSERT, UPDATE, REPLACE ou DELETE) si elle est appelée après cette opération.

Ce fonction renvoie le nombre de lignes après l'utilisation de la clause SELECT.

Syntaxe

mysqli_affected_rows($con)

Paramètre

NuméroParamètres et descriptions
1

con (obligatoire)

C'est un objet de connexion représentant la connexion avec le serveur MySQL.

Valeur de retour

La fonction mysqli_affected_rows() de PHP renvoie une valeur entière indiquant le nombre de lignes affectées par l'opération précédente (SELECT, INSERT, UPDATE, REPLACE ou DELETE).

Si la requête précédente a une erreur, cette fonction renvoie -1. Si il n'y a pas de lignes affectées, ou si la requête précédente/l'opération n'est pas l'une des requêtes mentionnées ci-dessus/d'une opération, cette fonction renvoie 0.

Version PHP

Cette fonction a été introduite dans la version PHP5introduit dans les versions supérieures et peut être utilisé dans toutes les versions plus récentes.

Online examples

Les exemples suivants montrentmysqli_affected_rows()Utilisation de la fonction (style de programme)

<?php
   //Création de la connexion
   $con = mysqli_connect("localhost", "root", "password", "mydb");
   //Requête pour récupérer toutes les lignes de la table employee
   mysqli_query($con, "SELECT * FROM employee");
   //Nombre de lignes affectées
   $rows = mysqli_affected_rows($con);
   print("Nombre de lignes affectées : \n".$rows);
   //Close connection
   mysqli_close($con);
?>

Output results

Nombre de lignes affectées : 5

Online examples

Dans le style orienté objet, la syntaxe de cette fonction est $con -> affected_rows, où $con est un objet de connexion-

<?php
   //Création de la connexion
   $con = new mysqli("localhost", "root", "password", "mydb");
   //Requête pour récupérer toutes les lignes de la table employee
   $con -> query("SELECT * FROM employee");
   //Nombre de lignes affectées
   $rows = $con -> affected_rows;
   print("Nombre de lignes affectées : \n".$rows);
   //Close connection
   $con -> close();
?>

Output results

Nombre de lignes affectées : 5

Online examples

Lorsqu'il n'y a pas de requête (spécifiée) ou lorsque la requête a une erreur ou n'affecte aucune ligne, vérifions la valeur de retour de cette fonction :

<?php
   //Création de la connexion
   $con = mysqli_connect("localhost", "root", "password", "mydb");
   $rows1 = mysqli_affected_rows($con);
   print("Lignes affectées (lorsqu'aucune opération n'a été spécifiée précédemment) : \n".$rows1"\n");
   //Requête pour récupérer toutes les lignes de la table employee
   mysqli_query($con, "SELECT * FORM employee");
   $rows2 = mysqli_affected_rows($con);
   print("Lignes affectées (lorsqu'il y a une erreur dans la requête) : \n".$rows2"\n");
   //Requête pour récupérer toutes les lignes de la table employee
   mysqli_query($con, "SELECT FIRST_NAME FROM employee WHERE AGE <=19");
   $rows3 = mysqli_affected_rows($con);
   print("Lignes affectées (lorsqu'une requête ne réalise aucune opération) : \n".$rows3"\n");
   //Close connection
   mysqli_close($con);
?>

Output results

Rows affected (when no operation is specified previously): 0
Rows affected (when there is an error in the query): -1
Rows affected (when no operation is executed by the query): 0

Online examples

The following examples demonstrate SELECT, UPDATE, INSERT, and DELETE queries inmysqli_affected_rowsUsage of functions-

<?php
   //Establish connection
   $con = mysqli_connect("localhost", "root", "password", "mydb");
   //Query all rows from the employee table
   mysqli_query($con, "SELECT * FROM employee WHERE INCOME > 8000");
   print("Number of rows affected by SELECT query: ".mysqli_affected_rows($con)."\n");
   //Query to update rows in the employee table
   mysqli_query($con, "UPDATE employee SET INCOME=INCOME+5000 WHERE FIRST_NAME IN ('Ramya', 'Trupthi', 'Sarmista')");
   print("Number of rows affected by UPDATE query: ".mysqli_affected_rows($con)."\n");
   //Query to insert rows into the employee table
   mysqli_query($con, "INSERT INTO employee VALUES ('Archana', 'Mohonthy', 30, 'M', 13000, 106");
   print("Number of rows affected by INSERT query: ".mysqli_affected_rows($con)."\n");
   //Query to delete rows from the employee table
   mysqli_query($con, "DELETE FROM employee WHERE AGE > 25");
   print("Number of rows affected by DELETE query: ".mysqli_affected_rows($con)."\n");
   //Close connection
   mysqli_close($con);
?>

Output results

Number of rows affected by SELECT query: 4
Number of rows affected by UPDATE query: 3
Number of rows affected by INSERT query: 1
Number of rows affected by DELETE query: 3

PHP MySQLi Reference Manual