Example #1
0
/**
 * Retourne le nombre de lignes d'une sélection
 *
 * @param array|string $from     Tables à consulter (From)
 * @param array|string $where    Conditions a remplir (Where)
 * @param array|string $groupby  Critère de regroupement (Group by)
 * @param array $having          Tableau des des post-conditions à remplir (Having)
 * @param string $serveur        Nom de la connexion
 * @param bool $requeter         Exécuter la requête, sinon la retourner
 * @return int|string
 *     - String Texte de la requête si demandé
 *     - int Nombre de lignes (0 si la requête n'a pas réussie)
**/
function spip_mysql_countsel($from = array(), $where = array(), $groupby = '', $having = array(), $serveur = '', $requeter = true)
{
    $c = !$groupby ? '*' : 'DISTINCT ' . (is_string($groupby) ? $groupby : join(',', $groupby));
    $r = spip_mysql_select("COUNT({$c})", $from, $where, '', '', '', $having, $serveur, $requeter);
    if (!$requeter) {
        return $r;
    }
    if (!$r instanceof mysqli_result) {
        return 0;
    }
    list($c) = mysqli_fetch_array($r, MYSQLI_NUM);
    mysqli_free_result($r);
    return $c;
}
Example #2
0
function spip_mysql_countsel($from = array(), $where = array(),
			     $groupby = '', $having = array(), $serveur='',$requeter=true)
{
	$c = !$groupby ? '*' : ('DISTINCT ' . (is_string($groupby) ? $groupby : join(',', $groupby)));

	$r = spip_mysql_select("COUNT($c)", $from, $where,'', '', '', $having, $serveur, $requeter);

	if (!$requeter) return $r;
	if (!is_resource($r)) return 0;
	list($c) = mysql_fetch_array($r, MYSQL_NUM);
	mysql_free_result($r);
	return $c;
}