From 5be632a87a60d71f2755c8dcb7f52e1686842030 Mon Sep 17 00:00:00 2001
From: Matthieu Marcillaud <marcimat@rezo.net>
Date: Wed, 6 Jun 2012 09:42:22 +0000
Subject: [PATCH] Correction de notices PHP
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

À noter que l'on enlève la fonction de constantes pour SQLite qui était là juste pour éviter des problèmes avec les PHP 4, mais n'a plus lieu d'être maintenant.
---
 ecrire/inc/utils.php            |  2 +-
 ecrire/req/sqlite2.php          | 13 +++++++------
 ecrire/req/sqlite3.php          | 17 ++++++++---------
 ecrire/req/sqlite_generique.php |  8 ++------
 4 files changed, 18 insertions(+), 22 deletions(-)

diff --git a/ecrire/inc/utils.php b/ecrire/inc/utils.php
index 5fd12fdaf3..c48a169683 100644
--- a/ecrire/inc/utils.php
+++ b/ecrire/inc/utils.php
@@ -186,7 +186,7 @@ function spip_log($message=NULL, $name=NULL) {
 	static $pre = array();
 	static $log;
 	preg_match('/^([a-z_]*)\.?(\d)?$/iS', (string) $name, $regs);
-	if (!$logname = $regs[1])
+	if (!isset($regs[1]) OR !$logname = $regs[1])
 		$logname = null;
 	if (!isset($regs[2]) OR !$niveau = $regs[2])
 		$niveau = _LOG_INFO;
diff --git a/ecrire/req/sqlite2.php b/ecrire/req/sqlite2.php
index 0402871ef3..8426838d22 100644
--- a/ecrire/req/sqlite2.php
+++ b/ecrire/req/sqlite2.php
@@ -16,18 +16,19 @@ include_spip('req/sqlite_generique');
 
 $GLOBALS['spip_sqlite2_functions_1'] = _sqlite_ref_fonctions();
 
+/**
+ * Constantes pour SQLite 2
+**/
+define('SPIP_SQLITE2_ASSOC', SQLITE_ASSOC);
+define('SPIP_SQLITE2_NUM', SQLITE_NUM);
+define('SPIP_SQLITE2_BOTH', SQLITE_BOTH);
+
 
 // http://doc.spip.org/@req_sqlite2_dist
 function req_sqlite2_dist($addr, $port, $login, $pass, $db='', $prefixe='') {	
 	return req_sqlite_dist($addr, $port, $login, $pass, $db, $prefixe, $sqlite_version=2);
 }
 
-// http://doc.spip.org/@spip_sqlite2_constantes
-function spip_sqlite2_constantes(){
-	define('SPIP_SQLITE2_ASSOC', SQLITE_ASSOC);
-	define('SPIP_SQLITE2_NUM', SQLITE_NUM);
-	define('SPIP_SQLITE2_BOTH', SQLITE_BOTH);
-}
 
 function spip_versions_sqlite2()
 {
diff --git a/ecrire/req/sqlite3.php b/ecrire/req/sqlite3.php
index bae9077ee9..991f7b8455 100644
--- a/ecrire/req/sqlite3.php
+++ b/ecrire/req/sqlite3.php
@@ -18,21 +18,20 @@ include_spip('req/sqlite_generique');
 
 $GLOBALS['spip_sqlite3_functions_1'] = _sqlite_ref_fonctions();
 
-	
-	
+/**
+ * Constantes pour SQLite 3
+**/
+define('SPIP_SQLITE3_ASSOC', constant('PDO::FETCH_ASSOC'));
+define('SPIP_SQLITE3_NUM', constant('PDO::FETCH_NUM'));
+define('SPIP_SQLITE3_BOTH', constant('PDO::FETCH_BOTH'));
+
+
 // http://doc.spip.org/@req_sqlite3_dist
 function req_sqlite3_dist($addr, $port, $login, $pass, $db='', $prefixe='') {
 	return req_sqlite_dist($addr, $port, $login, $pass, $db, $prefixe, $sqlite_version=3);
 }
 
 
-// http://doc.spip.org/@spip_sqlite3_constantes
-function spip_sqlite3_constantes(){
-	define('SPIP_SQLITE3_ASSOC', constant('PDO::FETCH_ASSOC'));
-	define('SPIP_SQLITE3_NUM', constant('PDO::FETCH_NUM'));
-	define('SPIP_SQLITE3_BOTH', constant('PDO::FETCH_BOTH'));
-}
-
 function spip_versions_sqlite3()
 {
 	return _sqlite_charger_version(3) ? 3 : false;
diff --git a/ecrire/req/sqlite_generique.php b/ecrire/req/sqlite_generique.php
index d533060f43..ee12846c2f 100644
--- a/ecrire/req/sqlite_generique.php
+++ b/ecrire/req/sqlite_generique.php
@@ -67,11 +67,6 @@ function req_sqlite_dist($addr, $port, $login, $pass, $db = '', $prefixe = '', $
 		return false;
 	}
 
-	// chargement des constantes
-	// il ne faut pas definir les constantes avant d'avoir charge les modules sqlite
-	$define = "spip_sqlite".$sqlite_version."_constantes";
-	$define();
-
 	$ok = false;
 	if (!$db){
 		// si pas de db ->
@@ -1867,7 +1862,8 @@ function _sqlite_requete_create($nom, $champs, $cles, $autoinc = false, $tempora
 	// il faut passer par des create index
 	// Il gere par contre primary key !
 	// Soit la PK est definie dans les cles, soit dans un champs
-	if (!$c = $cles[$pk = "PRIMARY KEY"]){
+	$c = ""; // le champ de cle primaire
+	if (!isset($cles[$pk = "PRIMARY KEY"]) OR !$c = $cles[$pk]){
 		foreach ($champs as $k => $v){
 			if (false!==stripos($v, $pk)){
 				$c = $k;
-- 
GitLab