Skip to content
Extraits de code Groupes Projets
Valider 1139c276 rédigé par marcimat's avatar marcimat
Parcourir les fichiers

Ticket #4206 : Lorsqu’on utilise sql_quote pour sqlite, alors qu’il y a...

Ticket #4206 : Lorsqu’on utilise sql_quote pour sqlite, alors qu’il y a plusieurs connexiions ouvertes à des BDD de type différents, bien faire en sorte qu’on utilise
l’échappement SQLite adapté, avec un pilote PDO qui correspond tant qu’à faire. (Francky)
parent 06b742e7
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -94,10 +94,10 @@ function req_sqlite_dist($addr, $port, $login, $pass, $db = '', $prefixe = '', $ ...@@ -94,10 +94,10 @@ function req_sqlite_dist($addr, $port, $login, $pass, $db = '', $prefixe = '', $
// pour tester la connexion // pour tester la connexion
$db = "_sqlite" . $sqlite_version . "_install"; $db = "_sqlite" . $sqlite_version . "_install";
$tmp = _DIR_DB . $db . ".sqlite"; $tmp = _DIR_DB . $db . ".sqlite";
$ok = $link = new PDO("sqlite:$tmp"); $ok = $link = new \PDO("sqlite:$tmp");
} else { } else {
// Ouvrir (eventuellement creer la base) // Ouvrir (eventuellement creer la base)
$ok = $link = new PDO("sqlite:$f"); $ok = $link = new \PDO("sqlite:$f");
} }
if (!$ok) { if (!$ok) {
...@@ -486,7 +486,7 @@ function spip_sqlite_create_base($nom, $serveur = '', $option = true) { ...@@ -486,7 +486,7 @@ function spip_sqlite_create_base($nom, $serveur = '', $option = true) {
$f = _DIR_DB . $f; $f = _DIR_DB . $f;
} }
$ok = new PDO("sqlite:$f"); $ok = new \PDO("sqlite:$f");
if ($ok) { if ($ok) {
unset($ok); unset($ok);
...@@ -2017,9 +2017,14 @@ function _sqlite_calculer_cite($v, $type) { ...@@ -2017,9 +2017,14 @@ function _sqlite_calculer_cite($v, $type) {
} }
} }
// trouver un link sqlite3 pour faire l'echappement // trouver un link sqlite pour faire l'echappement
foreach ($GLOBALS['connexions'] as $s) { foreach ($GLOBALS['connexions'] as $s) {
if ($l = $s['link']) { if (
$l = $s['link']
and is_object($l)
and $l instanceof \PDO
and $l->getAttribute(\PDO::ATTR_DRIVER_NAME) === 'sqlite'
) {
return $l->quote($v); return $l->quote($v);
} }
} }
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter