num_rows ti dice quante righe ci sono nel set di risultati che hai appena selezionato con un SELECT interrogazione. affected_rows ti dice quante righe sono interessate da un INSERT , UPDATE , REPLACE o DELETE interrogazione. La differenza è evidente:
$resultSet = mysqli_query($c, 'SELECT ...');
echo mysqli_num_rows($resultSet);
SELECT il set di risultati va in num_rows .
mysqli_query($c, 'UPDATE ...');
echo mysqli_affected_rows($c);
Nessun set di risultati, nessun num_rows .