From c37632db6bfc9b58a2b09b683b448b010527874a Mon Sep 17 00:00:00 2001 From: Matthieu Marcillaud <marcimat@rezo.net> Date: Sat, 8 Mar 2008 17:02:57 +0000 Subject: [PATCH] =?UTF-8?q?-=20SQLite=20:=20correction=20de=20la=20regexp?= =?UTF-8?q?=20sur=20ALTER=20qui=20ne=20prenait=20pas=20en=20compte=20plusi?= =?UTF-8?q?eurs=20alters=20successifs=20separ=C3=A9s=20par=20des=20virgule?= =?UTF-8?q?s?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ecrire/req/sqlite_generique.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/ecrire/req/sqlite_generique.php b/ecrire/req/sqlite_generique.php index e89ec0d844..6ab1e57cbd 100644 --- a/ecrire/req/sqlite_generique.php +++ b/ecrire/req/sqlite_generique.php @@ -145,7 +145,7 @@ function spip_sqlite_alter($query, $serveur='',$requeter=true){ */ // 1 - if (preg_match("/\s*(ALTER(\s*IGNORE)?\s*TABLE\s*([^\s]*))\s*(.*)?/i", $query, $regs)){ + if (preg_match("/\s*(ALTER(\s*IGNORE)?\s*TABLE\s*([^\s]*))\s*(.*)?/is", $query, $regs)){ $debut = $regs[1]; $table = $regs[3]; $suite = $regs[4]; @@ -162,7 +162,7 @@ function spip_sqlite_alter($query, $serveur='',$requeter=true){ foreach ($todo as $do){ $do = trim($do); if (!preg_match('/(DROP|CHANGE COLUMN|CHANGE|MODIFY|RENAME TO|RENAME|ADD COLUMN|ADD)\s*([^\s]*)\s*(.*)?/', $do, $matches)){ - spip_log("SQLite : Probleme de ALTER TABLE, utilisation non reconnue dans : $query", 'sqlite'); + spip_log("SQLite : Probleme de ALTER TABLE, utilisation non reconnue dans : $do \n(requete d'origine : $query)", 'sqlite'); return false; } @@ -1242,6 +1242,7 @@ function _sqlite_ajouter_champs_timestamp($table, $couples, $desc='', $serveur=' // avec la gestion de DEFAULT et ON UPDATE // mais ceux-ci ne sont pas utilises dans le core $tables[$table] = array(); + foreach ($desc['field'] as $k=>$v){ if (strpos('timestamp', strtolower(ltrim($v)))===0) $tables[$table][] = $k; -- GitLab