La fonction
sql_countsel()
retourne le nombre de lignes d’une sélection demandée. C’est un raccourci d’écriture à peu près équivalent à
sql_select('COUNT(*)', ...)
.
Elle prend les mêmes arguments que
sql_select()
moins le premier :
-#
$from
,
-#
$where
,
-#
$groupby
,
-#
$having
,
-#
$serveur
,
-#
$option
.
Elle s’utilise comme ceci :
$nombre = sql_countsel("table");
Exemple
Compter le nombre de mots d’un groupe de mot donné :
$groupe = sql_countsel("spip_mots", "id_groupe=$id_groupe");
Retourner
false
s’il y a des articles dans une rubrique :
if (sql_countsel('spip_articles', array(
"id_rubrique=$id_rubrique",
"statut <> 'poubelle'"
))) {
return false;
}
Si la table
spip_notations_objets
du plugin « Notations » ne contient pas encore d’entrée pour l’identifiant d’objet indiqué, on effectue une insertion dans la base, sinon une mise à jour :
// Mise a jour ou insertion ?
if (!sql_countsel("spip_notations_objets", array(
"objet=" . sql_quote($objet),
"id_objet=" . sql_quote($id_objet),
))) {
// Remplir la table de notation des objets
sql_insertq("spip_notations_objets", ...);
// ...
} else {
// Mettre ajour dans les autres cas
sql_updateq("spip_notations_objets", ...);
// ...
}