dblayeroo : allow to orderAdd on aliases too

git-svn-id: https://svn.fournier38.fr/svn/ProgSVN/trunk@4285 bf3deb0d-5f1a-0410-827f-c0cc1f45334c
This commit is contained in:
2018-07-15 06:07:09 +00:00
parent c3607d88e3
commit 5560ab2943
2 changed files with 21 additions and 2 deletions

View File

@@ -957,4 +957,21 @@ class test_dblayeroo_{ENGINE} extends PHPUnit_Framework_TestCase
$this->assertSame (array (0=>array ("ALIAS"=>"where2")), $this->assertSame (array (0=>array ("ALIAS"=>"where2")),
$res); $res);
} }
public function test_orderAdd_alias1 ()
{
$tbl2 = $this->tbl2 ();
$res = $tbl2->select ()
->displayAdd ("uid", "max")
->orderAdd ("max","ASC")
->execute ();
$tbl2->disconnect ();
$this->assertSame (array (
array ('max' => 1),
array ('max' => 4),
array ('max' => 5),
array ('max' => 6),
), $res);
}
} }

View File

@@ -2063,9 +2063,11 @@ class dblayeroo
if (! in_array ($sort, array ("ASC", "DESC", "NATASC", "NATDESC"))) if (! in_array ($sort, array ("ASC", "DESC", "NATASC", "NATDESC")))
$this->DBException ( $this->DBException (
"Invalid sort provided (not ASC nor DESC nor NATASC nor NATDESC)"); "Invalid sort provided (not ASC nor DESC nor NATASC nor NATDESC)");
if (! array_key_exists ($field, $this->fields)) if (! array_key_exists ($field, $this->fields) &&
! in_array ($field, $this->displayAlias))
$this->DBException (sprintf ( $this->DBException (sprintf (
"Invalid field to orderAdd '%s' : not defined in table", $field)); "Invalid field to orderAdd '%s' : not defined in table nor in alias",
$field));
$plus = ""; $plus = "";
if (substr ($sort, 0, 3) === "NAT") if (substr ($sort, 0, 3) === "NAT")
{ {