Use regexp instead of like in goto query
This commit is contained in:
parent
dff2a726f9
commit
67bb037b36
@ -1470,7 +1470,7 @@ function user_get_alias_details($username) {
|
|||||||
WHERE `goto` LIKE :username_goto
|
WHERE `goto` LIKE :username_goto
|
||||||
AND `address` NOT LIKE '@%'
|
AND `address` NOT LIKE '@%'
|
||||||
AND `address` != :username_address");
|
AND `address` != :username_address");
|
||||||
$stmt->execute(array(':username_goto' => '%' . $username . '%', ':username_address' => $username));
|
$stmt->execute(array(':username_goto' => '(^|,)'.$username.'($|,)', ':username_address' => $username));
|
||||||
$run = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
$run = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
||||||
while ($row = array_shift($run)) {
|
while ($row = array_shift($run)) {
|
||||||
$data['aliases'] = $row['aliases'];
|
$data['aliases'] = $row['aliases'];
|
||||||
@ -4719,8 +4719,8 @@ function mailbox_delete_mailbox($postarray) {
|
|||||||
':username' => $username
|
':username' => $username
|
||||||
));
|
));
|
||||||
$stmt = $pdo->prepare("SELECT `address`, `goto` FROM `alias`
|
$stmt = $pdo->prepare("SELECT `address`, `goto` FROM `alias`
|
||||||
WHERE `goto` LIKE :username");
|
WHERE `goto` REGEXP :username");
|
||||||
$stmt->execute(array(':username' => '%'.$username.'%'));
|
$stmt->execute(array(':username' => '(^|,)'.$username.'($|,)'));
|
||||||
$GotoData = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
$GotoData = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
||||||
foreach ($GotoData as $gotos) {
|
foreach ($GotoData as $gotos) {
|
||||||
$goto_exploded = explode(',', $gotos['goto']);
|
$goto_exploded = explode(',', $gotos['goto']);
|
||||||
@ -4879,7 +4879,7 @@ function mailbox_get_sender_acl_handles($mailbox) {
|
|||||||
try {
|
try {
|
||||||
// Fixed addresses
|
// Fixed addresses
|
||||||
$stmt = $pdo->prepare("SELECT `address` FROM `alias` WHERE `goto` LIKE :goto AND `address` NOT LIKE '@%'");
|
$stmt = $pdo->prepare("SELECT `address` FROM `alias` WHERE `goto` LIKE :goto AND `address` NOT LIKE '@%'");
|
||||||
$stmt->execute(array(':goto' => '%' . $mailbox . '%'));
|
$stmt->execute(array(':goto' => '(^|,)'.$mailbox.'($|,)'));
|
||||||
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
||||||
while ($row = array_shift($rows)) {
|
while ($row = array_shift($rows)) {
|
||||||
$data['fixed_sender_aliases'][] = $row['address'];
|
$data['fixed_sender_aliases'][] = $row['address'];
|
||||||
|
Loading…
Reference in New Issue
Block a user