From 2d393ec1f2cb1c0e0b436e5eb4410df34d8138ae Mon Sep 17 00:00:00 2001 From: "Committo,Ergo:sum" <esj@rezo.net> Date: Wed, 19 Apr 2006 11:20:21 +0000 Subject: [PATCH] =?UTF-8?q?T=C3=A2che=20#209:=20normalisation=20des=20appe?= =?UTF-8?q?ls=20de=20spip=5Fquery.=20Il=20reste=2018=20appels=20calcul?= =?UTF-8?q?=C3=A9s=20qui=20reecrivent=20la=20requete=20SQL=20pour=20une=20?= =?UTF-8?q?raison=20ou=20une=20autre=20et=20qu'il=20faudra=20donc=20adapte?= =?UTF-8?q?r=20=C3=A0=20la=20main=20pour=20SQLite.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ecrire/base/create.php | 10 +- ecrire/base/optimiser.php | 199 ++++++++++++++++----------------- ecrire/exec/brouteur_frame.php | 2 +- ecrire/exec/convert_utf8.php | 9 +- ecrire/exec/export.php | 10 +- ecrire/inc/auth_ldap.php | 20 ++-- ecrire/inc/auth_spip.php | 17 +-- ecrire/inc/mail.php | 22 ++-- ecrire/urls/propres.php | 14 +-- 9 files changed, 139 insertions(+), 164 deletions(-) diff --git a/ecrire/base/create.php b/ecrire/base/create.php index 0e0de2412b..68a46197b7 100644 --- a/ecrire/base/create.php +++ b/ecrire/base/create.php @@ -44,11 +44,7 @@ function spip_create_table($nom, $champs, $cles, $autoinc=false) { $s = ","; } - $query = "CREATE TABLE IF NOT EXISTS $nom ($query" . - ($keys ? ",$keys" : '') . - ")\n"; - spip_query_db($query); - + spip_query_db("CREATE TABLE IF NOT EXISTS $nom ($query" . ($keys ? ",$keys" : '') . ")\n"); } @@ -90,8 +86,8 @@ function stripslashes_base($table, $champs) { while (list(, $champ) = each($champs)) { $modifs[] = $champ . '=REPLACE(REPLACE(' .$champ. ',"\\\\\'", "\'"), \'\\\\"\', \'"\')'; } - $query = "UPDATE $table SET ".join(',', $modifs); - spip_query($query); + spip_query("UPDATE $table SET ".join(',', $modifs)); + } ?> diff --git a/ecrire/base/optimiser.php b/ecrire/base/optimiser.php index f68a4b0897..a9a476aba4 100644 --- a/ecrire/base/optimiser.php +++ b/ecrire/base/optimiser.php @@ -25,14 +25,13 @@ function optimiser_base() { if ($GLOBALS['table_prefix']) $table_pref = $GLOBALS['table_prefix']."_"; else $table_pref = ""; - $query = "SHOW TABLES LIKE '$table_pref%'"; - $result = spip_query($query); + $result = spip_query("SHOW TABLES LIKE '$table_pref%'"); + while ($row = spip_fetch_array($result)) $tables[] = $row[0]; if ($tables) { $tables = join(",", $tables); - $query = "OPTIMIZE TABLE ".$tables; - spip_query($query); + spip_query("OPTIMIZE TABLE ".$tables); } @@ -46,47 +45,47 @@ function optimiser_base() { // # les articles qui sont dans une id_rubrique inexistante - $query = "SELECT articles.id_article + $res = spip_query("SELECT articles.id_article FROM spip_articles AS articles LEFT JOIN spip_rubriques AS rubriques ON articles.id_rubrique=rubriques.id_rubrique WHERE rubriques.id_rubrique IS NULL - AND articles.maj < $mydate"; - $res = spip_query($query); + AND articles.maj < $mydate"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_articles WHERE id_article=".$row['id_article']); # les breves qui sont dans une id_rubrique inexistante - $query = "SELECT breves.id_breve + $res = spip_query("SELECT breves.id_breve FROM spip_breves AS breves LEFT JOIN spip_rubriques AS rubriques ON breves.id_rubrique=rubriques.id_rubrique WHERE rubriques.id_rubrique IS NULL - AND breves.maj < $mydate"; - $res = spip_query($query); + AND breves.maj < $mydate"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_breves WHERE id_breve=".$row['id_breve']); # les forums lies a une id_rubrique inexistante - $query = "SELECT forum.id_forum FROM spip_forum AS forum + $res = spip_query("SELECT forum.id_forum FROM spip_forum AS forum LEFT JOIN spip_rubriques AS rubriques ON forum.id_rubrique=rubriques.id_rubrique WHERE rubriques.id_rubrique IS NULL - AND forum.id_rubrique>0"; - $res = spip_query($query); + AND forum.id_rubrique>0"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_forum WHERE id_forum=".$row['id_forum']); # les droits d'auteurs sur une id_rubrique inexistante - $query = "SELECT auteurs_rubriques.id_rubrique,auteurs_rubriques.id_auteur + $res = spip_query("SELECT auteurs_rubriques.id_rubrique,auteurs_rubriques.id_auteur FROM spip_auteurs_rubriques AS auteurs_rubriques LEFT JOIN spip_rubriques AS rubriques ON auteurs_rubriques.id_rubrique=rubriques.id_rubrique - WHERE rubriques.id_rubrique IS NULL"; - $res = spip_query($query); + WHERE rubriques.id_rubrique IS NULL"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_auteurs_rubriques WHERE id_auteur=".$row['id_auteur'] @@ -94,24 +93,24 @@ function optimiser_base() { # les liens des documents qui sont dans une id_rubrique inexistante - $query = "SELECT documents_rubriques.id_document,documents_rubriques.id_rubrique + $res = spip_query("SELECT documents_rubriques.id_document,documents_rubriques.id_rubrique FROM spip_documents_rubriques AS documents_rubriques LEFT JOIN spip_rubriques AS rubriques ON documents_rubriques.id_rubrique=rubriques.id_rubrique - WHERE rubriques.id_rubrique IS NULL"; - $res = spip_query($query); + WHERE rubriques.id_rubrique IS NULL"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_documents_rubriques WHERE id_document=".$row['id_document'] ." AND id_rubrique=".$row['id_rubrique']); # les liens des mots affectes a une id_rubrique inexistante - $query = "SELECT mots_rubriques.id_mot,mots_rubriques.id_rubrique + $res = spip_query("SELECT mots_rubriques.id_mot,mots_rubriques.id_rubrique FROM spip_mots_rubriques AS mots_rubriques LEFT JOIN spip_rubriques AS rubriques ON mots_rubriques.id_rubrique=rubriques.id_rubrique - WHERE rubriques.id_rubrique IS NULL"; - $res = spip_query($query); + WHERE rubriques.id_rubrique IS NULL"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_mots_rubriques WHERE id_mot=".$row['id_mot'] @@ -122,54 +121,54 @@ function optimiser_base() { // Articles // - $query = "DELETE FROM spip_articles - WHERE statut='poubelle' AND maj < $mydate"; - spip_query($query); + spip_query("DELETE FROM spip_articles + WHERE statut='poubelle' AND maj < $mydate"); + # les liens d'auteurs d'articles effaces - $query = "SELECT auteurs_articles.id_auteur,auteurs_articles.id_article + $res = spip_query("SELECT auteurs_articles.id_auteur,auteurs_articles.id_article FROM spip_auteurs_articles AS auteurs_articles LEFT JOIN spip_articles AS articles ON auteurs_articles.id_article=articles.id_article - WHERE articles.id_article IS NULL"; - $res = spip_query($query); + WHERE articles.id_article IS NULL"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_auteurs_articles WHERE id_auteur=".$row['id_auteur'] ." AND id_article=".$row['id_article']); # les liens de documents d'articles effaces - $query = "SELECT documents_articles.id_document,documents_articles.id_article + $res = spip_query("SELECT documents_articles.id_document,documents_articles.id_article FROM spip_documents_articles AS documents_articles LEFT JOIN spip_articles AS articles ON documents_articles.id_article=articles.id_article - WHERE articles.id_article IS NULL"; - $res = spip_query($query); + WHERE articles.id_article IS NULL"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_documents_articles WHERE id_document=".$row['id_document'] ." AND id_article=".$row['id_article']); # les liens de mots affectes a des articles effaces - $query = "SELECT mots_articles.id_mot,mots_articles.id_article + $res = spip_query("SELECT mots_articles.id_mot,mots_articles.id_article FROM spip_mots_articles AS mots_articles LEFT JOIN spip_articles AS articles ON mots_articles.id_article=articles.id_article - WHERE articles.id_article IS NULL"; - $res = spip_query($query); + WHERE articles.id_article IS NULL"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_mots_articles WHERE id_mot=".$row['id_mot'] ." AND id_article=".$row['id_article']); # les forums lies a des articles effaces - $query = "SELECT forum.id_forum + $res = spip_query("SELECT forum.id_forum FROM spip_forum AS forum LEFT JOIN spip_articles AS articles ON forum.id_article=articles.id_article WHERE articles.id_article IS NULL - AND forum.id_article>0"; - $res = spip_query($query); + AND forum.id_article>0"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_forum WHERE id_forum=".$row['id_forum']); @@ -179,42 +178,42 @@ function optimiser_base() { // Breves // - $query = "DELETE FROM spip_breves - WHERE statut='refuse' AND maj < $mydate"; - spip_query($query); + spip_query("DELETE FROM spip_breves + WHERE statut='refuse' AND maj < $mydate"); + # les liens de documents sur des breves effacees - $query = "SELECT documents_breves.id_document,documents_breves.id_breve + $res = spip_query("SELECT documents_breves.id_document,documents_breves.id_breve FROM spip_documents_breves AS documents_breves LEFT JOIN spip_breves AS breves ON documents_breves.id_breve=breves.id_breve - WHERE breves.id_breve IS NULL"; - $res = spip_query($query); + WHERE breves.id_breve IS NULL"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_documents_breves WHERE id_document=".$row['id_document'] ." AND id_breve=".$row['id_breve']); # les liens de mots affectes a des breves effacees - $query = "SELECT mots_breves.id_mot,mots_breves.id_breve + $res = spip_query("SELECT mots_breves.id_mot,mots_breves.id_breve FROM spip_mots_breves AS mots_breves LEFT JOIN spip_breves AS breves ON mots_breves.id_breve=breves.id_breve - WHERE breves.id_breve IS NULL"; - $res = spip_query($query); + WHERE breves.id_breve IS NULL"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_mots_breves WHERE id_mot=".$row['id_mot'] ." AND id_breve=".$row['id_breve']); # les forums lies a des breves effacees - $query = "SELECT forum.id_forum + $res = spip_query("SELECT forum.id_forum FROM spip_forum AS forum LEFT JOIN spip_breves AS breves ON forum.id_breve=breves.id_breve WHERE breves.id_breve IS NULL - AND forum.id_breve>0"; - $res = spip_query($query); + AND forum.id_breve>0"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_forum WHERE id_forum=".$row['id_forum']); @@ -224,42 +223,42 @@ function optimiser_base() { // Sites // - $query = "DELETE FROM spip_syndic - WHERE maj < $mydate AND statut = 'refuse'"; - spip_query($query); + spip_query("DELETE FROM spip_syndic + WHERE maj < $mydate AND statut = 'refuse'"); + # les articles syndiques appartenant a des sites effaces - $query = "SELECT syndic_articles.id_syndic_article,syndic_articles.id_syndic + $res = spip_query("SELECT syndic_articles.id_syndic_article,syndic_articles.id_syndic FROM spip_syndic_articles AS syndic_articles LEFT JOIN spip_syndic AS syndic ON syndic_articles.id_syndic=syndic.id_syndic - WHERE syndic.id_syndic IS NULL"; - $res = spip_query($query); + WHERE syndic.id_syndic IS NULL"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_syndic_articles WHERE id_syndic_article=".$row['id_syndic_article'] ." AND id_syndic=".$row['id_syndic']); # les liens de mots affectes a des sites effaces - $query = "SELECT mots_syndic.id_mot,mots_syndic.id_syndic + $res = spip_query("SELECT mots_syndic.id_mot,mots_syndic.id_syndic FROM spip_mots_syndic AS mots_syndic LEFT JOIN spip_syndic AS syndic ON mots_syndic.id_syndic=syndic.id_syndic - WHERE syndic.id_syndic IS NULL"; - $res = spip_query($query); + WHERE syndic.id_syndic IS NULL"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_mots_syndic WHERE id_mot=".$row['id_mot'] ." AND id_syndic=".$row['id_syndic']); # les forums lies a des sites effaces - $query = "SELECT forum.id_forum + $res = spip_query("SELECT forum.id_forum FROM spip_forum AS forum LEFT JOIN spip_syndic AS syndic ON forum.id_syndic=syndic.id_syndic WHERE syndic.id_syndic IS NULL - AND forum.id_syndic>0"; - $res = spip_query($query); + AND forum.id_syndic>0"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_forum WHERE id_forum=".$row['id_forum']); @@ -270,49 +269,49 @@ function optimiser_base() { // # les liens d'articles sur des auteurs effaces - $query = "SELECT auteurs_articles.id_auteur,auteurs_articles.id_article + $res = spip_query("SELECT auteurs_articles.id_auteur,auteurs_articles.id_article FROM spip_auteurs_articles AS auteurs_articles LEFT JOIN spip_auteurs AS auteurs ON auteurs_articles.id_auteur=auteurs.id_auteur - WHERE auteurs.id_auteur IS NULL"; - $res = spip_query($query); + WHERE auteurs.id_auteur IS NULL"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_auteurs_articles WHERE id_auteur=".$row['id_auteur'] ." AND id_article=".$row['id_article']); # les liens de messages sur des auteurs effaces - $query = "SELECT auteurs_messages.id_auteur,auteurs_messages.id_message + $res = spip_query("SELECT auteurs_messages.id_auteur,auteurs_messages.id_message FROM spip_auteurs_messages AS auteurs_messages LEFT JOIN spip_auteurs AS auteurs ON auteurs_messages.id_auteur=auteurs.id_auteur - WHERE auteurs.id_auteur IS NULL"; - $res = spip_query($query); + WHERE auteurs.id_auteur IS NULL"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_auteurs_messages WHERE id_auteur=".$row['id_auteur'] ." AND id_message=".$row['id_message']); # les liens de rubriques sur des auteurs effaces - $query = "SELECT auteurs_rubriques.id_auteur,auteurs_rubriques.id_rubrique + $res = spip_query("SELECT auteurs_rubriques.id_auteur,auteurs_rubriques.id_rubrique FROM spip_auteurs_rubriques AS auteurs_rubriques LEFT JOIN spip_rubriques AS rubriques ON auteurs_rubriques.id_rubrique=rubriques.id_rubrique - WHERE rubriques.id_rubrique IS NULL"; - $res = spip_query($query); + WHERE rubriques.id_rubrique IS NULL"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_auteurs_rubriques WHERE id_auteur=".$row['id_auteur'] ." AND id_rubrique=".$row['id_rubrique']); # effacer les auteurs poubelle qui ne sont lies a aucun article - $query = "SELECT auteurs.id_auteur + $res = spip_query("SELECT auteurs.id_auteur FROM spip_auteurs AS auteurs LEFT JOIN spip_auteurs_articles AS auteurs_articles ON auteurs_articles.id_auteur=auteurs.id_auteur WHERE auteurs_articles.id_auteur IS NULL - AND auteurs.statut='5poubelle' AND auteurs.maj < $mydate"; - $res = spip_query($query); + AND auteurs.statut='5poubelle' AND auteurs.maj < $mydate"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_auteurs WHERE id_auteur=".$row['id_auteur']); @@ -323,12 +322,12 @@ function optimiser_base() { // # supprimer les messages lies a un auteur disparu - $query = "SELECT messages.id_message + $res = spip_query("SELECT messages.id_message FROM spip_messages AS messages LEFT JOIN spip_auteurs AS auteurs ON auteurs.id_auteur=messages.id_auteur - WHERE auteurs.id_auteur IS NULL"; - $res = spip_query($query); + WHERE auteurs.id_auteur IS NULL"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_messages WHERE id_message=".$row['id_message']); @@ -338,65 +337,65 @@ function optimiser_base() { // Mots-cles // - $query = "DELETE FROM spip_mots - WHERE titre='' AND maj < $mydate"; - $result = spip_query($query); + $result = spip_query("DELETE FROM spip_mots + WHERE titre='' AND maj < $mydate"); + # les liens mots-articles sur des mots effaces - $query = "SELECT mots_articles.id_mot,mots_articles.id_article + $res = spip_query("SELECT mots_articles.id_mot,mots_articles.id_article FROM spip_mots_articles AS mots_articles LEFT JOIN spip_mots AS mots ON mots_articles.id_mot=mots.id_mot - WHERE mots.id_mot IS NULL"; - $res = spip_query($query); + WHERE mots.id_mot IS NULL"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_mots_articles WHERE id_mot=".$row['id_mot'] ." AND id_article=".$row['id_article']); # les liens mots-breves sur des mots effaces - $query = "SELECT mots_breves.id_mot,mots_breves.id_breve + $res = spip_query("SELECT mots_breves.id_mot,mots_breves.id_breve FROM spip_mots_breves AS mots_breves LEFT JOIN spip_mots AS mots ON mots_breves.id_mot=mots.id_mot - WHERE mots.id_mot IS NULL"; - $res = spip_query($query); + WHERE mots.id_mot IS NULL"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_mots_breves WHERE id_mot=".$row['id_mot'] ." AND id_breve=".$row['id_breve']); # les liens mots-forum sur des mots effaces - $query = "SELECT mots_forum.id_mot,mots_forum.id_forum + $res = spip_query("SELECT mots_forum.id_mot,mots_forum.id_forum FROM spip_mots_forum AS mots_forum LEFT JOIN spip_mots AS mots ON mots_forum.id_mot=mots.id_mot - WHERE mots.id_mot IS NULL"; - $res = spip_query($query); + WHERE mots.id_mot IS NULL"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_mots_forum WHERE id_mot=".$row['id_mot'] ." AND id_forum=".$row['id_forum']); # les liens mots-rubriques sur des mots effaces - $query = "SELECT mots_rubriques.id_mot,mots_rubriques.id_rubrique + $res = spip_query("SELECT mots_rubriques.id_mot,mots_rubriques.id_rubrique FROM spip_mots_rubriques AS mots_rubriques LEFT JOIN spip_mots AS mots ON mots_rubriques.id_mot=mots.id_mot - WHERE mots.id_mot IS NULL"; - $res = spip_query($query); + WHERE mots.id_mot IS NULL"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_mots_rubriques WHERE id_mot=".$row['id_mot'] ." AND id_rubrique=".$row['id_rubrique']); # les liens mots-syndic sur des mots effaces - $query = "SELECT mots_syndic.id_mot,mots_syndic.id_syndic + $res = spip_query("SELECT mots_syndic.id_mot,mots_syndic.id_syndic FROM spip_mots_syndic AS mots_syndic LEFT JOIN spip_mots AS mots ON mots_syndic.id_mot=mots.id_mot - WHERE mots.id_mot IS NULL"; - $res = spip_query($query); + WHERE mots.id_mot IS NULL"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_mots_syndic WHERE id_mot=".$row['id_mot'] @@ -407,17 +406,17 @@ function optimiser_base() { // Forums // - $query = "DELETE FROM spip_forum - WHERE statut='redac' AND maj < $mydate"; - spip_query($query); + spip_query("DELETE FROM spip_forum + WHERE statut='redac' AND maj < $mydate"); + # les liens mots-forum sur des forums effaces - $query = "SELECT mots_forum.id_mot,mots_forum.id_forum + $res = spip_query("SELECT mots_forum.id_mot,mots_forum.id_forum FROM spip_mots_forum AS mots_forum LEFT JOIN spip_forum AS forum ON mots_forum.id_forum=forum.id_forum - WHERE forum.id_forum IS NULL"; - $res = spip_query($query); + WHERE forum.id_forum IS NULL"); + while ($row = spip_fetch_array($res,SPIP_ASSOC)) spip_query("DELETE FROM spip_mots_forum WHERE id_mot=".$row['id_mot'] diff --git a/ecrire/exec/brouteur_frame.php b/ecrire/exec/brouteur_frame.php index bf09682a40..7e32893559 100644 --- a/ecrire/exec/brouteur_frame.php +++ b/ecrire/exec/brouteur_frame.php @@ -54,7 +54,7 @@ function exec_brouteur_frame_dist() } else if ($special == "valider") { - $result=spip_query("SELECT articles.id_article, article.id_rubrique, articles.titre, articles.statut FROM spip_articles AS articles WHERE articles.statut = 'prop' ORDER BY articles.date DESC"); + $result=spip_query("SELECT articles.id_article, articles.id_rubrique, articles.titre, articles.statut FROM spip_articles AS articles WHERE articles.statut = 'prop' ORDER BY articles.date DESC"); if (spip_num_rows($result)>0) { echo "<div style='padding-top: 6px; padding-bottom: 3px;'><b class='verdana2'>"._T("info_articles_proposes")."</b></div>"; echo "<div class='plan-articles'>"; diff --git a/ecrire/exec/convert_utf8.php b/ecrire/exec/convert_utf8.php index c3cdffc6a0..6033d38752 100644 --- a/ecrire/exec/convert_utf8.php +++ b/ecrire/exec/convert_utf8.php @@ -161,12 +161,11 @@ function exec_convert_utf8_dist() { // Mais on la transcode if ($charset_source != 'utf-8') { - $query = unicode_to_utf_8( - charset2unicode($query, $charset_source)); - spip_query($query + spip_query(unicode_to_utf_8(charset2unicode($query, $charset_source)) . + # eviter une double conversion - ." AND $champ LIKE '<CONVERT %'" - ); + " AND $champ LIKE '<CONVERT %'" + ); echo '. '; flush(); } } diff --git a/ecrire/exec/export.php b/ecrire/exec/export.php index ede80f3b42..a48e3c59bd 100644 --- a/ecrire/exec/export.php +++ b/ecrire/exec/export.php @@ -29,10 +29,10 @@ function mysql_timestamp_to_time($maj) // Liste un sommaire d'objets de n'importe quel type // a la condition d'etre publics et plus recents que $maj -function liste_objets($query, $type, $maj) { +function liste_objets($result, $type, $maj) { $res = array(); - if ($result = spip_query($query)) + if ($result) while ($row = spip_fetch_array($result)) { $t_id = $row["id_$type"]; $t_statut = $row["statut"]; @@ -93,16 +93,16 @@ function exec_export_dist() if ($rubriques) { $rubriques = join(",", $rubriques); - $query = "SELECT id_article, statut, maj FROM spip_articles WHERE id_rubrique IN ($rubriques)"; + $query = spip_query("SELECT id_article, statut, maj FROM spip_articles WHERE id_rubrique IN ($rubriques)"); $articles = liste_objets($query, "article", $maj); - $query = "SELECT id_breve, statut, maj FROM spip_breves WHERE id_rubrique IN ($rubriques)"; + $query = spip_query("SELECT id_breve, statut, maj FROM spip_breves WHERE id_rubrique IN ($rubriques)"); liste_objets($query, "breve", $maj); if ($articles) { $articles = join(",", $articles); - $query = "SELECT DISTINCT id_auteur FROM spip_auteurs_articles WHERE id_article IN ($articles)"; + $query = spip_query("SELECT DISTINCT id_auteur FROM spip_auteurs_articles WHERE id_article IN ($articles)"); liste_objets($query, "auteur", 0); } } diff --git a/ecrire/inc/auth_ldap.php b/ecrire/inc/auth_ldap.php index ba0e2efce8..a7eec0d49a 100644 --- a/ecrire/inc/auth_ldap.php +++ b/ecrire/inc/auth_ldap.php @@ -10,8 +10,6 @@ * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. * \***************************************************************************/ - -// if (!defined("_ECRIRE_INC_VERSION")) return; class Auth_ldap { @@ -76,10 +74,10 @@ class Auth_ldap { if (!$this->login) return false; // Si l'auteur existe dans la base, y recuperer les infos - $query = "SELECT * FROM spip_auteurs WHERE login='".addslashes($this->login)."' AND source='ldap'"; - $result = spip_query($query); + $row = spip_fetch_array(spip_query("SELECT * FROM spip_auteurs WHERE login='".addslashes($this->login)."' AND source='ldap'")); + - if ($row = spip_fetch_array($result)) { + if ($row) { $this->nom = $row['nom']; $this->email = $row['email']; $this->statut = $row['statut']; @@ -132,15 +130,11 @@ class Auth_ldap { if (!$statut) return false; // Si l'auteur n'existe pas, l'inserer avec le statut par defaut (defini a l'install) - $query = "SELECT id_auteur FROM spip_auteurs WHERE login='$login'"; - $result = spip_query($query); - if (spip_num_rows($result)) return false; - $query = "INSERT IGNORE INTO spip_auteurs (source, nom, login, email, bio, statut, pass) ". - "VALUES ('ldap', '$nom', '$login', '$email', '$bio', '$statut', '')"; - return spip_query($query); - } -} + if (spip_num_rows(spip_query("SELECT id_auteur FROM spip_auteurs WHERE login='$login'"))) return false; + return spip_query("INSERT IGNORE INTO spip_auteurs (source, nom, login, email, bio, statut, pass) VALUES ('ldap', '$nom', '$login', '$email', '$bio', '$statut', '')"); + } +} ?> diff --git a/ecrire/inc/auth_spip.php b/ecrire/inc/auth_spip.php index 32571b123f..d6108e44b4 100644 --- a/ecrire/inc/auth_spip.php +++ b/ecrire/inc/auth_spip.php @@ -10,8 +10,6 @@ * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. * \***************************************************************************/ - -// if (!defined("_ECRIRE_INC_VERSION")) return; class Auth_spip { @@ -26,8 +24,7 @@ class Auth_spip { // Interdire mot de passe vide if ($mdpass_actuel == '') return false; - $query = "SELECT * FROM spip_auteurs WHERE login='".addslashes($login)."' AND pass='".addslashes($mdpass_actuel)."' AND statut<>'5poubelle'"; - $result = spip_query($query); + $result = spip_query("SELECT * FROM spip_auteurs WHERE login='".addslashes($login)."' AND pass='".addslashes($mdpass_actuel)."' AND statut<>'5poubelle'"); if ($row = spip_fetch_array($result)) { $this->nom = $row['nom']; @@ -46,8 +43,8 @@ class Auth_spip { // Interdire mot de passe vide if ($pass == '') return false; - $query = "SELECT alea_actuel, alea_futur FROM spip_auteurs WHERE login='".addslashes($login)."'"; - $result = spip_query($query); + $result = spip_query("SELECT alea_actuel, alea_futur FROM spip_auteurs WHERE login='".addslashes($login)."'"); + if ($row = spip_fetch_array($result)) { $md5pass = md5($row['alea_actuel'] . $pass); $md5next = md5($row['alea_futur'] . $pass); @@ -72,13 +69,9 @@ class Auth_spip { include_spip('inc/session'); // fait tourner le codage du pass dans la base $nouvel_alea_futur = creer_uniqid(); - $query = "UPDATE spip_auteurs SET alea_actuel = alea_futur, ". - "pass = '".addslashes($this->md5next)."', alea_futur = '$nouvel_alea_futur' ". - "WHERE login='".$this->login."'"; - @spip_query($query); + @spip_query("UPDATE spip_auteurs SET alea_actuel = alea_futur, pass = '".addslashes($this->md5next)."', alea_futur = '$nouvel_alea_futur' WHERE login='".$this->login."'"); + } } } - - ?> diff --git a/ecrire/inc/mail.php b/ecrire/inc/mail.php index 8730d12a8a..655265f991 100644 --- a/ecrire/inc/mail.php +++ b/ecrire/inc/mail.php @@ -161,22 +161,19 @@ function envoyer_mail($email, $sujet, $texte, $from = "", $headers = "") { function extrait_article($row) { include_spip('inc/texte'); - $id_article = $row[0]; - $titre = $row[2]; - $chapo = $row[6]; - $texte = $row[7]; - $date = $row[9]; - $statut = $row[10]; + $id_article = $row['id_article']; + $titre = $row['titre']; + $chapo = $row['chapo']; + $texte = $row['texte']; + $date = $row['date']; + $statut = $row['statut']; $les_auteurs = ""; - $query = "SELECT auteurs.* FROM spip_auteurs AS auteurs, spip_auteurs_articles AS lien WHERE lien.id_article=$id_article AND auteurs.id_auteur=lien.id_auteur"; - $result_auteurs = spip_query($query); + $result_auteurs = spip_query("SELECT nom FROM spip_auteurs AS auteurs, spip_auteurs_articles AS lien WHERE lien.id_article=$id_article AND auteurs.id_auteur=lien.id_auteur"); while ($row = spip_fetch_array($result_auteurs)) { - $nom_auteur = trim(supprimer_tags(typo($row['nom']))); - if ($les_auteurs) $les_auteurs .= ', '; - $les_auteurs .= $nom_auteur; + $les_auteurs .= trim(supprimer_tags(typo($row['nom']))); } $extrait = "** $titre **\n"; @@ -201,8 +198,7 @@ function envoyer_mail_publication($id_article) { $suivi_edito = $GLOBALS['meta']["suivi_edito"]; if ($suivi_edito == "oui") { - $query = "SELECT * FROM spip_articles WHERE id_article = $id_article"; - $result = spip_query($query); + $result = spip_query("SELECT * FROM spip_articles WHERE id_article = $id_article"); if ($row = spip_fetch_array($result)) { diff --git a/ecrire/urls/propres.php b/ecrire/urls/propres.php index 23e6f66850..176dbd2788 100644 --- a/ecrire/urls/propres.php +++ b/ecrire/urls/propres.php @@ -109,9 +109,8 @@ function _generer_url_propre($type, $id_objet) { // Verifier les eventuels doublons et mettre a jour $lock = "url $type $id_objet"; spip_get_lock($lock, 10); - $query = "SELECT $col_id FROM $table - WHERE url_propre='".addslashes($url)."' AND $col_id != $id_objet"; - if (spip_num_rows(spip_query($query)) > 0) { + + if (spip_num_rows(spip_query("SELECT $col_id FROM $table WHERE url_propre='".addslashes($url)."' AND $col_id != $id_objet")) > 0) { $url = $url.','.$id_objet; } @@ -122,8 +121,8 @@ function _generer_url_propre($type, $id_objet) { $url = $url.','.$id_objet; // Mettre a jour dans la base - $query = "UPDATE $table SET url_propre='".addslashes($url)."' WHERE $col_id=$id_objet"; - spip_query($query); + spip_query("UPDATE $table SET url_propre='".addslashes($url)."' WHERE $col_id=$id_objet"); + spip_release_lock($lock); spip_log("Creation de l'url propre '$url' pour $col_id=$id_objet"); @@ -284,9 +283,8 @@ function recuperer_parametres_url(&$fond, $url) { $table = "spip_".table_objet($type); $col_id = id_table_objet($type); - $query = "SELECT $col_id FROM $table - WHERE url_propre='".addslashes($url_propre)."'"; - $result = spip_query($query); + $result = spip_query("SELECT $col_id FROM $table WHERE url_propre='".addslashes($url_propre)."'"); + if ($row = spip_fetch_array($result)) { $contexte[$col_id] = $row[$col_id]; } -- GitLab