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

Manuale di base PHP

Manuale avanzato PHP

PHP & MySQL

Manuale di riferimento PHP

Uso e esempio della funzione PHP mysqli_affected_rows()

Manuale di riferimento PHP MySQLi

La funzione mysqli_affected_rows() ottiene il numero di righe influenzate dall'ultima operazione MySQL.

Definizione e uso

mysqli_affected_rows()Il ruolo della funzione è: se viene chiamata dopo una query INSERT, UPDATE, REPLACE o DELETE, restituisce il numero di righe influenzate dall'operazione precedente.

Quando viene utilizzata dopo una query SELECT, questa funzione restituisce il numero di righe.

Sintassi

mysqli_affected_rows($con)

Parametro

Numero di sequenzaParametri e spiegazione
1

con(obbligatorio)

Questo è un oggetto che rappresenta la connessione con il server MySQL.

Valore di ritorno

La funzione PHP mysqli_affected_rows() restituisce un valore intero che indica il numero di righe influenzate dalla precedente operazione (SELECT, INSERT, UPDATE, REPLACE o DELETE).

Se la query precedente ha un errore, questa funzione restituisce -1. Se non ci sono righe interessate o se la query/operazione precedente non è una delle query/operazioni menzionate sopra, questa funzione restituisce 0.

Versione PHP

Questa funzione è stata introdotta per la prima volta nella versione PHP 5 e può essere utilizzata in tutte le versioni superiori.

Esempio online

Esempi seguenti dimostranomysqli_affected_rows()L'uso della funzione (stile del programma)

<?php
   //Creazione della connessione
   $con = mysqli_connect("localhost", "root", "password", "mydb");
   //Query per recuperare tutte le righe della tabella employee
   mysqli_query($con, "SELECT * FROM employee");
   //Righe interessate
   $rows = mysqli_affected_rows($con);
   print("Il numero di righe interessate: ". $rows. "\n");
   //Chiudi la connessione
   mysqli_close($con);
?>

Risultato dell'output

Il numero di righe interessate: 5

Esempio online

Nel linguaggio orientato agli oggetti, la sintassi di questa funzione è $con -> affected_rows, dove $con È l'oggetto di connessione -

<?php
   //Creazione della connessione
   $con = new mysqli("localhost", "root", "password", "mydb");
   //Query per recuperare tutte le righe della tabella employee
   $con -> query("SELECT * FROM employee");
   //Numero di righe interessate
   $rows = $con -> affected_rows;
   print("Il numero di righe interessate: ". $rows. "\n");
   //Chiudi la connessione
   $con -> close();
?>

Risultato dell'output

Il numero di righe interessate: 5

Esempio online

Quando nelle seguenti circostanze, controlliamo il valore di ritorno di questa funzione: non ci sono (query specificate) e la query ha un errore o non influisce su nessuna riga:

<?php
   //Creazione della connessione
   $con = mysqli_connect("localhost", "root", "password", "mydb");
   $rows1 = mysqli_affected_rows($con);
   print("Le righe interessate (se non è stata specificata l'operazione): ". $rows1. "\n");
   //Query per recuperare tutte le righe della tabella employee
   mysqli_query($con, "SELECT * FORM employee");
   $rows2 = mysqli_affected_rows($con);
   print("Le righe interessate (se la query ha un errore): ". $rows2. "\n");
   //Query per recuperare tutte le righe della tabella employee
   mysqli_query($con, "SELECT FIRST_NAME FROM employee WHERE AGE <= 19");
   $rows3 = mysqli_affected_rows($con);
   print("Le righe interessate (quando la query non esegue alcuna operazione): ". $rows3. "\n");
   //Chiudi la connessione
   mysqli_close($con);
?>

Risultato dell'output

Le righe interessate (se non è stato specificato l'operazione): 0
Le righe interessate (se la query ha un errore): -1
Righe interessate (quando la query non esegue alcuna operazione): 0

Esempio online

Di seguito è riportato un esempio che dimostra SELECT, UPDATE, INSERT e DELETE querymysqli_affected_rowsUso della funzione -

<?php
   //Stabilisci la connessione
   $con = mysqli_connect("localhost", "root", "password", "mydb");
   //Query per ottenere tutte le righe dalla tabella employee
   mysqli_query($con, "SELECT * FROM employee WHERE INCOME > 8000");
   print("Righe interessate dalla query SELECT: ".mysqli_affected_rows($con)."\n");
   //Query per aggiornare le righe nella tabella employee
   mysqli_query($con, "UPDATE employee SET INCOME=INCOME+5000 WHERE FIRST_NAME IN ('Ramya', 'Trupthi', 'Sarmista')");
   print("Righe interessate dalla query UPDATE: ".mysqli_affected_rows($con)."\n");
   //Query per inserire una riga nella tabella employee
   mysqli_query($con, "INSERT INTO employee VALUES ('Archana', 'Mohonthy', 30, 'M', 13000, 106)");
   print("Righe interessate dalla query INSERT: ".mysqli_affected_rows($con)."\n");
   //Query per eliminare le righe dalla tabella employee
   mysqli_query($con, "DELETE FROM employee WHERE AGE > 25");
   print("Righe interessate dalla query DELETE: ".mysqli_affected_rows($con)."\n");
   //Chiudi la connessione
   mysqli_close($con);
?>

Risultato dell'output

Righe interessate dalla query SELECT: 4
Righe interessate dalla query UPDATE: 3
Righe interessate dalla query INSERT: 1
Righe interessate dalla query DELETE: 3

Manuale di riferimento PHP MySQLi