From b3306772f9deb72acfaa74515c07a126989da41b Mon Sep 17 00:00:00 2001 From: Timothy Warren Date: Tue, 10 Apr 2012 15:43:39 -0400 Subject: [PATCH] Normalize quote_ident method --- sys/db/db_pdo.php | 5 ++++- sys/db/drivers/mysql/mysql_driver.php | 23 ++--------------------- tests/test_dbs/FB_TEST_DB.FDB | Bin 802816 -> 802816 bytes 3 files changed, 6 insertions(+), 22 deletions(-) diff --git a/sys/db/db_pdo.php b/sys/db/db_pdo.php index b14cd1a..4ffdc98 100644 --- a/sys/db/db_pdo.php +++ b/sys/db/db_pdo.php @@ -23,6 +23,7 @@ abstract class DB_PDO extends PDO { public $manip; protected $statement; + protected $escape_char = '"'; /** * PDO constructor wrapper @@ -172,7 +173,9 @@ abstract class DB_PDO extends PDO { // Split each identifier by the period $hiers = explode('.', $ident); - return '"'.implode('"."', $hiers).'"'; + return $this->escape_char . + implode("{$this->escape_char}.{$this->escape_char}", $hiers) . + $this->escape_char; } // ------------------------------------------------------------------------- diff --git a/sys/db/drivers/mysql/mysql_driver.php b/sys/db/drivers/mysql/mysql_driver.php index d76e319..0bdbfee 100644 --- a/sys/db/drivers/mysql/mysql_driver.php +++ b/sys/db/drivers/mysql/mysql_driver.php @@ -19,6 +19,8 @@ */ class MySQL extends DB_PDO { + protected $escape_char = '`'; + /** * Connect to MySQL Database * @@ -83,26 +85,5 @@ class MySQL extends DB_PDO { { return isset($this->statement) ? $this->statement->rowCount() : FALSE; } - - // -------------------------------------------------------------------------- - - /** - * Surrounds the string with the databases identifier escape characters - * - * @param string $ident - * @return string - */ - public function quote_ident($ident) - { - if (is_array($ident)) - { - return array_map(array($this, 'quote_ident'), $ident); - } - - // Split each identifier by the period - $hiers = explode('.', $ident); - - return '`'.implode('`.`', $hiers).'`'; - } } //End of mysql_driver.php \ No newline at end of file diff --git a/tests/test_dbs/FB_TEST_DB.FDB b/tests/test_dbs/FB_TEST_DB.FDB index 2cc7d4760160ce13d19590d603ef3b9d56d97790..1983a70b6d93ca2475dc003222589396f0ec550e 100755 GIT binary patch delta 564 zcmZ9{F-yZh6u|NK(#G06O3y(M1x;Jqsvsnwh=U-w2%=aJXBR=ikDw47&b3A11}DFP ziW(eL(8);zU7V6s6okZCP%syI6`Lb>`NQ$!#c^!Mu@@1hExQPR4f_4{Q5Fwo+)mV9Hpzq)>1AIdk@4t5!5$eG4jinBClI%i#+WjO2REPKI> zG{eZ%O=G5ef0pGie^NWnaLc%`D1BVIOebP{Tg5!g8s(%dBL^EsrBUlO>twKb12qBDqu?Ng*1+#I1gzK-^GqcWic30 z1>eNIM+?{#jfe*I?2q)8n`GL4OVVNohX7Pd7r~xT4M|VJvp8xh^hx*u4T~?Is`w}h z0Tr>OK6I$6m8x2)cTz22P7Fjeinr2Tz#B>a8}_P$RjpXnialu$Yl)A52E=AWwipYj K&pnN3srCy^dV!Mw delta 589 zcmaixKS%>H6vkiT)!IHGTG4{Jvr#C53CYXvJ@S2d#Ij7wGM5QV#y`UFI~ZDRO>$z+ z0I=l(pk)6JAT@C@R0uf?z<|n`cF#oaIlGkc=$+a0-VWo8a7H<6<4ohs!&y6LUd}o= z^PMoi#>lDdG5pgV`Q(|G$NeX9)Q+bPG*|0qTOoc}3q)N`1p-hA8juMNz(z0v^TA;- zWUR~jZeTE*jEd)1?6tRwSn!F<5^D5Q7qv1j(RW>pma$*V+++8G4&c0%$|Ylif|+=e zxidFMWNsW3J48smq1d@0>!hlS+=JAuxcU+CQp6$p