Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
PHP-MySQLi-Database-Class
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Kulya
PHP-MySQLi-Database-Class
Commits
32b81aa1
Commit
32b81aa1
authored
Mar 03, 2015
by
Alexander Butenko
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Allow backticks in order by
parent
6407b01c
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
4 additions
and
3 deletions
+4
-3
MysqliDb.php
MysqliDb.php
+2
-2
tests.php
tests.php
+2
-1
No files found.
MysqliDb.php
View file @
32b81aa1
...
...
@@ -469,14 +469,14 @@ class MysqliDb
{
$allowedDirection
=
Array
(
"ASC"
,
"DESC"
);
$orderbyDirection
=
strtoupper
(
trim
(
$orderbyDirection
));
$orderByField
=
preg_replace
(
"/[^-a-z0-9\.\(\),_]+/i"
,
''
,
$orderByField
);
$orderByField
=
preg_replace
(
"/[^-a-z0-9\.\(\),_
`
]+/i"
,
''
,
$orderByField
);
if
(
empty
(
$orderbyDirection
)
||
!
in_array
(
$orderbyDirection
,
$allowedDirection
))
die
(
'Wrong order direction: '
.
$orderbyDirection
);
if
(
is_array
(
$customFields
))
{
foreach
(
$customFields
as
$key
=>
$value
)
$customFields
[
$key
]
=
preg_replace
(
"/[^-a-z0-9\.\(\),_]+/i"
,
''
,
$value
);
$customFields
[
$key
]
=
preg_replace
(
"/[^-a-z0-9\.\(\),_
`
]+/i"
,
''
,
$value
);
$orderByField
=
'FIELD ('
.
$orderByField
.
', "'
.
implode
(
'","'
,
$customFields
)
.
'")'
;
}
...
...
tests.php
View file @
32b81aa1
...
...
@@ -157,12 +157,13 @@ $q = "drop table {$prefix}test;";
$db
->
rawQuery
(
$q
);
$db
->
orderBy
(
"
id
"
,
"asc"
);
$db
->
orderBy
(
"
`id`
"
,
"asc"
);
$users
=
$db
->
get
(
"users"
);
if
(
$db
->
count
!=
3
)
{
echo
"Invalid total insert count"
;
exit
;
}
echo
$db
->
getLastQuery
();
// order by field
$db
->
orderBy
(
"login"
,
"asc"
,
Array
(
"user3"
,
"user2"
,
"user1"
));
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment