Fixed bug with handling functions in select

This commit is contained in:
Timothy Warren 2013-04-25 08:15:56 -04:00
parent 6959b614ab
commit 842b4b5fd4
38 changed files with 480 additions and 449 deletions

View File

@ -279,8 +279,23 @@ abstract class DB_PDO extends PDO {
$hiers = explode('.', $ident);
$hiers = array_map('mb_trim', $hiers);
// Return the re-compiled string
return implode('.', array_map(array($this, '_quote'), $hiers));
// Re-compile the string
$raw = implode('.', array_map(array($this, '_quote'), $hiers));
// Fix functions
$funcs = array();
preg_match_all("#{$this->escape_char}([a-zA-Z0-9_]+(\((.*?)\))){$this->escape_char}#iu", $raw, $funcs, PREG_SET_ORDER);
foreach($funcs as $f)
{
// Unquote the function
$raw = str_replace($f[0], $f[1], $raw);
// Quote the inside identifiers
$raw = str_replace($f[3], $this->quote_ident($f[3]), $raw);
}
return $raw;
}
// --------------------------------------------------------------------------

View File

@ -219,7 +219,7 @@
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -219,7 +219,7 @@
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -743,7 +743,7 @@ the connection/database</h2>
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -210,7 +210,7 @@
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -925,7 +925,7 @@ the last query executed</h2>
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -505,7 +505,7 @@ the query</h2>
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -234,7 +234,7 @@
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -213,7 +213,7 @@
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -963,7 +963,7 @@ the connection/database</h2>
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -239,7 +239,7 @@
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -209,7 +209,7 @@
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -963,7 +963,7 @@ the connection/database</h2>
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -234,7 +234,7 @@
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -204,7 +204,7 @@
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -965,7 +965,7 @@ the connection/database</h2>
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -234,7 +234,7 @@
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -209,7 +209,7 @@
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -1361,7 +1361,7 @@ passed array with key / value pairs</h2>
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -145,7 +145,7 @@
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -980,7 +980,7 @@ method if the database does not support 'TRUNCATE';</h2>
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -234,7 +234,7 @@
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -209,7 +209,7 @@
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -244,7 +244,7 @@ specified table</h2>
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -964,7 +964,7 @@ passed array with key / value pairs</h2>
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -68,7 +68,7 @@
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -237,7 +237,7 @@
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -65,7 +65,7 @@
</script><div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -110,7 +110,7 @@
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -340,7 +340,7 @@ instantiates the specific db driver</p>
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -68,7 +68,7 @@
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -95,7 +95,7 @@
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -212,7 +212,7 @@ data-fetching methods</p>
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -150,7 +150,7 @@ instantiates the specific db driver</p>
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

View File

@ -362,7 +362,7 @@ instantiates the specific db driver</p>
<div class="row"><footer class="span12">
Template is built using <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap 2</a> and icons provided by <a href="http://glyphicons.com/">Glyphicons</a>.<br>
Documentation is powered by <a href="http://www.phpdoc.org/">phpDocumentor 2.0.0a2</a> and<br>
generated on 2013-02-07T16:20:40-05:00.<br></footer></div>
generated on 2013-04-25T08:15:20-04:00.<br></footer></div>
</div>
</body>
</html>

File diff suppressed because it is too large Load Diff

View File

@ -36,6 +36,22 @@ abstract class QBTest extends UnitTestCase {
$this->assertReference($this->db, $db);
}
// --------------------------------------------------------------------------
public function TestFunctionGet()
{
if (empty($this->db)) return;
$query = $this->db->select('id, COUNT(id) as count')
->from('test')
->group_by('id')
->get();
$this->assertIsA($query, 'PDOStatement');
}
// --------------------------------------------------------------------------
public function TestGet()
{
if (empty($this->db)) return;

Binary file not shown.