Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
X
X Lib
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Commits
Open sidebar
XLibs
X Lib
Commits
ea1fcfbf
Commit
ea1fcfbf
authored
Sep 28, 2016
by
Alex Ne
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Коректировка вводных данных
parent
897c141b
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
54 additions
and
9 deletions
+54
-9
PDO.php
Database/Driver/PDO.php
+29
-6
PDOWhereConstructor.php
Database/Driver/PDOWhereConstructor.php
+25
-3
No files found.
Database/Driver/PDO.php
View file @
ea1fcfbf
...
@@ -164,10 +164,11 @@ class PDO {
...
@@ -164,10 +164,11 @@ class PDO {
$SQL
=
"
{
$type
}
INTO `
{
$table
}
` (`"
.
implode
(
'`,`'
,
$keys
)
.
"`) VALUES ( "
.
implode
(
", "
,
$pattern
)
.
" )"
;
$SQL
=
"
{
$type
}
INTO `
{
$table
}
` (`"
.
implode
(
'`,`'
,
$keys
)
.
"`) VALUES ( "
.
implode
(
", "
,
$pattern
)
.
" )"
;
$statement
=
$this
->
prepare
(
$SQL
);
$statement
=
$this
->
prepare
(
$SQL
);
foreach
(
$keys
as
$key
)
{
foreach
(
$keys
as
$key
)
{
if
(
is_integer
(
$data
[
$key
]))
{
$data_bind
=
$this
->
check_value
(
$data
[
$key
]);
$statement
->
bindValue
(
":
{
$key
}
"
,
$data
[
$key
],
\PDO
::
PARAM_INT
);
if
(
is_integer
(
$data_bind
))
{
$statement
->
bindValue
(
":
{
$key
}
"
,
$data_bind
,
\PDO
::
PARAM_INT
);
}
else
{
}
else
{
$statement
->
bindValue
(
":
{
$key
}
"
,
$data
[
$key
]
,
\PDO
::
PARAM_STR
);
$statement
->
bindValue
(
":
{
$key
}
"
,
$data
_bind
,
\PDO
::
PARAM_STR
);
}
}
}
}
...
@@ -209,10 +210,11 @@ class PDO {
...
@@ -209,10 +210,11 @@ class PDO {
$SQL
.=
$whete_obj
->
get_sql
();
$SQL
.=
$whete_obj
->
get_sql
();
$statement
=
$this
->
prepare
(
$SQL
);
$statement
=
$this
->
prepare
(
$SQL
);
foreach
(
$keys
as
$key
)
{
foreach
(
$keys
as
$key
)
{
if
(
is_integer
(
$data
[
$key
]))
{
$data_bind
=
$this
->
check_value
(
$data
[
$key
]);
$statement
->
bindValue
(
":
{
$key
}
"
,
$data
[
$key
],
\PDO
::
PARAM_INT
);
if
(
is_integer
(
$data_bind
))
{
$statement
->
bindValue
(
":
{
$key
}
"
,
$data_bind
,
\PDO
::
PARAM_INT
);
}
else
{
}
else
{
$statement
->
bindValue
(
":
{
$key
}
"
,
$data
[
$key
]
,
\PDO
::
PARAM_STR
);
$statement
->
bindValue
(
":
{
$key
}
"
,
$data
_bind
,
\PDO
::
PARAM_STR
);
}
}
}
}
$whete_obj
->
bind
(
$statement
);
$whete_obj
->
bind
(
$statement
);
...
@@ -305,6 +307,27 @@ class PDO {
...
@@ -305,6 +307,27 @@ class PDO {
}
}
public
function
__wakeup
()
{}
public
function
__wakeup
()
{}
/**
* @param $value
* @return mixed
*/
protected
function
check_value
(
$value
)
{
$type
=
gettype
(
$value
);
switch
(
strtolower
(
$type
))
{
case
'boolean'
:
return
$value
?
1
:
"0"
;
break
;
case
'null'
:
return
"0"
;
break
;
default
:
return
$value
;
break
;
}
}
}
}
?>
?>
\ No newline at end of file
Database/Driver/PDOWhereConstructor.php
View file @
ea1fcfbf
...
@@ -199,12 +199,34 @@ class PDOWhereConstructor {
...
@@ -199,12 +199,34 @@ class PDOWhereConstructor {
*/
*/
public
function
bind
(
&
$statement
)
{
public
function
bind
(
&
$statement
)
{
foreach
(
$this
->
data_set
as
$key
=>
$data_item
)
{
foreach
(
$this
->
data_set
as
$key
=>
$data_item
)
{
if
(
is_integer
(
$data_item
))
{
$data_bind
=
$this
->
check_value
(
$data_item
);
$statement
->
bindValue
(
$key
,
$data_item
,
\PDO
::
PARAM_INT
);
if
(
is_integer
(
$data_bind
))
{
$statement
->
bindValue
(
$key
,
$data_bind
,
\PDO
::
PARAM_INT
);
}
else
{
}
else
{
$statement
->
bindValue
(
$key
,
$data_
item
,
\PDO
::
PARAM_STR
);
$statement
->
bindValue
(
$key
,
$data_
bind
,
\PDO
::
PARAM_STR
);
}
}
}
}
}
}
/**
* @param $value
* @return mixed
*/
protected
function
check_value
(
$value
)
{
$type
=
gettype
(
$value
);
switch
(
strtolower
(
$type
))
{
case
'boolean'
:
return
$value
?
1
:
"0"
;
break
;
case
'null'
:
return
"0"
;
break
;
default
:
return
$value
;
break
;
}
}
}
}
?>
?>
\ No newline at end of file
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