Base di conoscenze
1000 FAQ, 500 tutorial e video esplicativi. Qui ci sono delle soluzioni!
Usare count() invece di mysql_num_rows()
Questa guida spiega perché si raccomanda l'abbandono della funzione mysql_num_rows()
MySQL restituisce semplicemente il numero di righe di un risultato.
Lo svantaggio di questa funzione è che è molto pesante per il server poiché si tratta di un ciclo che percorre ogni linea per contarli.
Ad esempio:
$SQLstr = "SELECT * FROM commentaires WHERE affiche=1";
$r = mysql_query($SQLstr);
$num = mysql_num_rows($r);
MySQL ha una funzione count()
che si occupa di questo e che è molto meno pesante. Usa questo:
$SQLstr = "SELECT count(*) FROM commentaires WHERE affiche=1"
$r = mysql_query($SQLstr);
$result = mysql_fetch_row($r);
$num = $result[0];
oppure
$SQLstr = "SELECT count(*) as total FROM commentaires WHERE affiche=1"
$r = mysql_query($SQLstr);
$result = mysql_fetch_array($r);
$num = $result['total'];
Link a questa FAQ: