mirror of
https://gitee.com/fastadminnet/framework.git
synced 2026-07-01 12:42:48 +08:00
修正数据库查询一处问题 改进数据库异常避免暴露敏感信息
This commit is contained in:
@@ -380,11 +380,13 @@ abstract class Builder
|
||||
if (array_key_exists($field, $binds)) {
|
||||
$bind = [];
|
||||
$array = [];
|
||||
foreach ($value as $k => $v) {
|
||||
if ($this->query->isBind($bindName . '_in_' . $k)) {
|
||||
$bindKey = $bindName . '_in_' . uniqid() . '_' . $k;
|
||||
$i = 0;
|
||||
foreach ($value as $v) {
|
||||
$i++;
|
||||
if ($this->query->isBind($bindName . '_in_' . $i)) {
|
||||
$bindKey = $bindName . '_in_' . uniqid() . '_' . $i;
|
||||
} else {
|
||||
$bindKey = $bindName . '_in_' . $k;
|
||||
$bindKey = $bindName . '_in_' . $i;
|
||||
}
|
||||
$bind[$bindKey] = [$v, $bindType];
|
||||
$array[] = ':' . $bindKey;
|
||||
|
||||
@@ -2301,7 +2301,7 @@ class Query
|
||||
$key = is_string($cache['key']) ? $cache['key'] : md5(serialize($options) . serialize($this->bind));
|
||||
$resultSet = Cache::get($key);
|
||||
}
|
||||
if (!$resultSet) {
|
||||
if (false === $resultSet) {
|
||||
// 生成查询SQL
|
||||
$sql = $this->builder->select($options);
|
||||
// 获取参数绑定
|
||||
@@ -2323,7 +2323,7 @@ class Query
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($cache) && $resultSet) {
|
||||
if (isset($cache) && false !== $resultSet) {
|
||||
// 缓存数据集
|
||||
$this->cacheData($key, $resultSet, $cache);
|
||||
}
|
||||
@@ -2481,7 +2481,7 @@ class Query
|
||||
$result = isset($resultSet[0]) ? $resultSet[0] : null;
|
||||
}
|
||||
|
||||
if (isset($cache) && $result) {
|
||||
if (isset($cache) && false !== $result) {
|
||||
// 缓存数据
|
||||
$this->cacheData($key, $result, $cache);
|
||||
}
|
||||
|
||||
@@ -36,6 +36,7 @@ class DbException extends Exception
|
||||
'Error SQL' => $sql,
|
||||
]);
|
||||
|
||||
unset($config['username'], $config['password']);
|
||||
$this->setData('Database Config', $config);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user