Browse Source

Préférer countsel à num_rows, mais une découverte:

{{{select count(*) from spip_articles limit 10;
 count 
-------
  1487
(1 row)
}}}
pour Mysql comme pour PG. Du coup retrait de l'argument LIMIT dans les appels de cette fonction. On laisse la paramètre dans la fonction néanmoins, du moins provisoirement.
2.0
Committo,Ergo:sum 16 years ago
parent
commit
83c9746e65
  1. 2
      ecrire/action/editer_auteur.php
  2. 2
      ecrire/action/editer_rubrique.php
  3. 6
      ecrire/action/instituer_mot.php
  4. 2
      ecrire/action/supprimer.php
  5. 4
      ecrire/balise/formulaire_signature.php
  6. 2
      ecrire/exec/accueil.php
  7. 7
      ecrire/exec/articles_page.php
  8. 2
      ecrire/exec/auteurs.php
  9. 2
      ecrire/exec/forum.php
  10. 2
      ecrire/exec/naviguer.php
  11. 11
      ecrire/exec/suivi_revisions.php
  12. 3
      ecrire/inc/chercher_rubrique.php
  13. 2
      ecrire/inc/plonger.php
  14. 2
      ecrire/inc/presentation.php
  15. 10
      ecrire/inc/rubriques.php

2
ecrire/action/editer_auteur.php

@ -82,7 +82,7 @@ function action_legender_auteur_post($r) {
if (strlen($new_login) < 4)
$echec[]= 'info_login_trop_court';
else {
$n = sql_countsel('spip_auteurs', "login=" . _q($new_login) . " AND id_auteur!=$id_auteur AND statut!='5poubelle'",'',1);
$n = sql_countsel('spip_auteurs', "login=" . _q($new_login) . " AND id_auteur!=$id_auteur AND statut!='5poubelle'");
if ($n)
$echec[]= 'info_login_existant';
else if ($new_login != $old_login) {

2
ecrire/action/editer_rubrique.php

@ -148,7 +148,7 @@ function revisions_rubriques($id_rubrique, $c=false) {
// http://doc.spip.org/@editer_rubrique_breves
function editer_rubrique_breves($id_rubrique, $id_parent)
{
$t = sql_countsel('spip_breves', "id_rubrique=$id_rubrique",'',1);
$t = sql_countsel('spip_breves', "id_rubrique=$id_rubrique");
if (!$t) return true;
$t = (_request('confirme_deplace', $c) <> 'oui');
if ($t) return false;

6
ecrire/action/instituer_mot.php

@ -33,10 +33,8 @@ function action_instituer_mot_post($r)
$id_groupe = intval(_request('id_groupe'));
if (!$id_mot AND $id_groupe) {
$id_mot = sql_insert("spip_mots",
'(id_groupe)', "($id_groupe)");
if ($r[2]) {
$id_mot = sql_insertq("spip_mots", array('id_groupe' => $id_groupe));
if ($id_mot AND $r[2]) {
list(,,,$ajouter_id_article, $table, $table_id) = $r;
ajouter_nouveau_mot($id_groupe, $table, $table_id, $id_mot, $ajouter_id_article);
}

2
ecrire/action/supprimer.php

@ -58,7 +58,7 @@ function action_supprimer_rubrique($r)
while ($r = sql_fetch($q)) {
$id_auteur = $r['id_auteur'];
spip_query("DELETE FROM spip_auteurs_rubriques WHERE id_rubrique=$id_rubrique AND id_auteur=$id_auteur");
$n = sql_countsel("spip_auteurs_rubriques", "id_auteur=$id_auteur",'', 1);
$n = sql_countsel("spip_auteurs_rubriques", "id_auteur=$id_auteur");
if (!$n)
spip_query("UPDATE spip_auteurs SET statut='1comite' WHERE id_auteur=$id_auteur");
}

4
ecrire/balise/formulaire_signature.php

@ -234,13 +234,13 @@ function inc_controler_signature_dist($id_article, $nom_email, $adresse_email, $
// On traite donc le probleme a la confirmation.
if ($email_unique) {
$r = sql_countsel('spip_signatures', "id_article=$id_article AND ad_email=" . _q($adresse_email) . " AND statut='publie'","", 1);
$r = sql_countsel('spip_signatures', "id_article=$id_article AND ad_email=" . _q($adresse_email) . " AND statut='publie'");
if ($r) return _T('form_pet_deja_signe');
}
if ($site_unique) {
$r = sql_countsel('spip_signatures', "id_article=$id_article AND url_site=" . _q($url_site) . " AND (statut='publie' OR statut='poubelle')",'',1);
$r = sql_countsel('spip_signatures', "id_article=$id_article AND url_site=" . _q($url_site) . " AND (statut='publie' OR statut='poubelle')");
if ($r) return _T('form_pet_site_deja_enregistre');
}

2
ecrire/exec/accueil.php

@ -162,7 +162,7 @@ function colonne_droite_neq4($id_rubrique, $activer_breves, $activer_sites, $art
$gadget .= "<table><tr>";
$cpt = sql_countsel('spip_articles AS art, spip_auteurs_articles AS lien', "lien.id_auteur=$connect_id_auteur AND art.id_article=lien.id_article", '', 1);
$cpt = sql_countsel('spip_articles AS art, spip_auteurs_articles AS lien', "lien.id_auteur=$connect_id_auteur AND art.id_article=lien.id_article");
if ($cpt) {
$gadget .= "<td>"
. icone_horizontale (_T('icone_tous_articles'), generer_url_ecrire("articles_page",""), "article-24.gif", "", false)

7
ecrire/exec/articles_page.php

@ -31,16 +31,15 @@ function exec_articles_page_dist()
//
echo pipeline('affiche_gauche',array('args'=>array('exec'=>'articles_page'),'data'=>''));
$result = spip_query("SELECT id_rubrique FROM spip_rubriques LIMIT 1");
if (spip_num_rows($result) > 0) {
if (sql_countsel('spip_rubriques')) {
echo bloc_des_raccourcis(icone_horizontale(_T('icone_ecrire_article'), generer_url_ecrire("articles_edit","new=oui"), "article-24.gif", "creer.gif", false));
} else {
if (autoriser('creerrubriquedans', 'rubrique')) {
if (autoriser('creerrubriquedans', 'rubrique')) {
echo _T('texte_creer_rubrique');
echo bloc_des_raccourcis(icone_horizontale (_T('icone_creer_rubrique'), generer_url_ecrire("rubriques_edit","new=oui&retour=nav"), "rubrique-24.gif", "creer.gif",false));
}
}
}
echo creer_colonne_droite('', true);
echo pipeline('affiche_droite',array('args'=>array('exec'=>'articles_page'),'data'=>''));

2
ecrire/exec/auteurs.php

@ -123,7 +123,7 @@ function lettres_d_auteurs($query, $debut, $max_par_page, $tri)
$i = 0;
while ($auteur = sql_fetch($query)) {
if ($i>=$debut AND $i<$debut+$max_par_page) {
$auteur['restreint'] = sql_countsel("spip_auteurs_rubriques", "id_auteur=".$auteur['id_auteur'],'', "1");
$auteur['restreint'] = sql_countsel("spip_auteurs_rubriques", "id_auteur=".$auteur['id_auteur']);
$auteurs[] = $auteur;
}

2
ecrire/exec/forum.php

@ -68,7 +68,7 @@ function forum_affiche($debut, $admin=false)
echo pipeline('affiche_milieu',array('args'=>array('exec'=>'forum'),'data'=>''));
$total = sql_countsel("spip_forum", "statut='$statutforum' AND id_parent=0",'', 11);
$total = sql_countsel("spip_forum", "statut='$statutforum' AND id_parent=0");
if ($total > 10)
echo '<small>'.liste_numeros_forum($script, $debut, $total).'</small>';

2
ecrire/exec/naviguer.php

@ -309,7 +309,7 @@ function contenu_naviguer($id_rubrique, $id_parent) {
// Verifier les boucles a mettre en relief
//
$relief = sql_countsel('spip_articles', "id_rubrique=$id_rubrique AND statut='prop' LIMIT 1");
$relief = sql_countsel('spip_articles', "id_rubrique=$id_rubrique AND statut='prop'");
if (!$relief) {
$relief = sql_countsel('spip_breves', "id_rubrique=$id_rubrique AND (statut='prepa' OR statut='prop')");

11
ecrire/exec/suivi_revisions.php

@ -60,16 +60,17 @@ function exec_suivi_revisions_dist()
if ($id_rubrique == $id_secteur) echo "\n<li><b>$titre</b>";
else {
$result_rub = spip_query("SELECT articles.titre FROM spip_versions AS versions, spip_articles AS articles WHERE versions.id_article = articles.id_article AND versions.id_version > 1 AND articles.id_secteur=$id_rubrique AND articles.statut IN $req_where LIMIT 1");
if (spip_num_rows($result_rub) > 0) echo "\n<li><a href='" . generer_url_ecrire("suivi_revisions","id_secteur=$id_rubrique") . "'>$titre</a></li>";
if (sql_countsel('spip_versions AS versions, spip_articles AS articles', "versions.id_article = articles.id_article AND versions.id_version > 1 AND articles.id_secteur=$id_rubrique AND articles.statut IN $req_where"))
echo "\n<li><a href='" . generer_url_ecrire("suivi_revisions","id_secteur=$id_rubrique") . "'>$titre</a></li>";
}
foreach ($langues as $lang) {
$titre = traduire_nom_langue($lang);
$result_lang = spip_query("SELECT versions.id_article FROM spip_versions AS versions, spip_articles AS articles WHERE versions.id_article = articles.id_article AND versions.id_version > 1 AND articles.lang='$lang' AND articles.statut IN $req_where LIMIT 1");
if ($lang == $lang_choisie) echo "\n<li><b>$titre</b></li>";
else if (spip_num_rows($result_lang) > 0) echo "\n<li><a href='" . generer_url_ecrire("suivi_revisions","lang_choisie=$lang") . "'>$titre</a></li>";
else {
$n = sql_countsel('spip_versions AS versions, spip_articles AS articles', "versions.id_article = articles.id_article AND versions.id_version > 1 AND articles.lang='$lang' AND articles.statut IN $req_where");
if ($n) echo "\n<li><a href='" . generer_url_ecrire("suivi_revisions","lang_choisie=$lang") . "'>$titre</a></li>";
}
}
}
echo "</ul></div>\n";

3
ecrire/inc/chercher_rubrique.php

@ -29,8 +29,7 @@ function inc_chercher_rubrique_dist ($id_rubrique, $type, $restreint, $idem=0) {
// - soit parce qu'il y a peu de rubriques
if (_SPIP_AJAX < 1
OR $type == 'breve'
OR spip_num_rows(
spip_query("SELECT id_rubrique FROM spip_rubriques LIMIT ".intval(_SPIP_SELECT_RUBRIQUES+1))) < _SPIP_SELECT_RUBRIQUES)
OR sql_countsel('spip_rubriques') < _SPIP_SELECT_RUBRIQUES)
return selecteur_rubrique_html($id_rubrique, $type, $restreint, $idem);
else

2
ecrire/inc/plonger.php

@ -33,7 +33,7 @@ function inc_plonger_dist($id_rubrique, $idom="", $list=array(), $col = 1, $excl
"spip_rubriques AS rub1 LEFT JOIN spip_rubriques AS rub2 ON (rub1.id_rubrique = rub2.id_parent)",
"rub1.id_parent = "._q($id_rubrique)."
AND rub1.id_rubrique!="._q($exclu)."
AND (rub2.id_rubrique IS NULL OR rub2.id_rubrique!="._q($exclu).")", "rub1.id_rubrique", "0+rub1.titre,rub1.titre");
AND (rub2.id_rubrique IS NULL OR rub2.id_rubrique!="._q($exclu).")", "", "0+rub1.titre,rub1.titre");
while ($row = sql_fetch($res)) {
if (autoriser('voir','rubrique',$row['id_rubrique'])){

2
ecrire/inc/presentation.php

@ -566,7 +566,7 @@ function avoir_visiteurs() {
if ($GLOBALS['meta']["forums_publics"] == 'abo') return true;
if ($GLOBALS['meta']['accepter_visiteurs'] == 'oui') return true;
return sql_countsel('spip_articles', "accepter_forum='abo'",'', '1');
return sql_countsel('spip_articles', "accepter_forum='abo'");
}
//

10
ecrire/inc/rubriques.php

@ -77,19 +77,19 @@ function depublier_branche_rubrique_if($id_rubrique)
$id_pred = $id_rubrique;
while ($id_pred) {
if (sql_countsel("spip_articles", "id_rubrique=$id_pred AND statut='publie'$postdates", '', "1"))
if (sql_countsel("spip_articles", "id_rubrique=$id_pred AND statut='publie'$postdates"))
return $id_pred != $id_rubrique;;
if (sql_countsel("spip_breves", "id_rubrique=$id_pred AND statut='publie'", '', "1"))
if (sql_countsel("spip_breves", "id_rubrique=$id_pred AND statut='publie'"))
return $id_pred != $id_rubrique;;
if (sql_countsel("spip_syndic", "id_rubrique=$id_pred AND statut='publie'", '', "1"))
if (sql_countsel("spip_syndic", "id_rubrique=$id_pred AND statut='publie'"))
return $id_pred != $id_rubrique;;
if (sql_countsel("spip_rubriques", "id_parent=$id_pred AND statut='publie'", '', "1"))
if (sql_countsel("spip_rubriques", "id_parent=$id_pred AND statut='publie'"))
return $id_pred != $id_rubrique;;
if (sql_countsel("spip_documents_rubriques", "id_rubrique=$id_pred", '', "1"))
if (sql_countsel("spip_documents_rubriques", "id_rubrique=$id_pred"))
return $id_pred != $id_rubrique;;
spip_query("UPDATE spip_rubriques SET statut='0' WHERE id_rubrique=$id_pred");

Loading…
Cancel
Save