Перейти к содержанию
Официальный форум поддержки Simpla

Рекомендуемые сообщения

Все добрый день!

Настраваю поиск в админке в разделе заказы по email.

Вписал вот эту строчку OR o.email LIKE "%'.$this->db->escape(trim($keyword)).'%" в keyword_filter - поиск заработал, но ище только если указывать email до собаки, т.е. допустим адрес adress@mail.ru, если указать adress и нажать поиск то он найдет а если вписать полный адрес (adress@mail.ru) то он вырежет символ @ и будет искать adressmail.ru - соответственно ничего не найдет.

 

Подскажите пожалуйста что именно может вырезать символ @?

 

$keyword_filter .= $this->db->placehold('AND (o.name LIKE "%'.$this->db->escape(trim($keyword)).'%" OR REPLACE(o.phone, "-", "")  LIKE "%'.$this->db->escape(str_replace('-', '', trim($keyword))).'%" OR o.address LIKE "%'.$this->db->escape(trim($keyword)).'%" OR o.email LIKE "%'.$this->db->escape(trim($keyword)).'%" )');
Ссылка на сообщение
Поделиться на другие сайты

Возможно виновата вот эта строка 

return strval(preg_replace('/[^\p{L}\p{Nd}\d\s_\-\.\%\s]/ui', '', $val));

 

 

В файле api/reguest.php



Вот весь код функции к которой обращается поиск

 

public function get($name, $type = null)
    {
    	$val = null;
    	if(isset($_GET[$name]))
    		$val = $_GET[$name];
    		
    	if(!empty($type) && is_array($val))
    		$val = reset($val);
    	
    	if($type == 'string')
    		return strval(preg_replace('/[^\p{L}\p{Nd}\d\s_\-\.\%\s]/ui', '', $val));
    		
    	if($type == 'integer')
    		return intval($val);

    	if($type == 'boolean')
    		return !empty($val);
    		
    	return $val;
    }
Ссылка на сообщение
Поделиться на другие сайты

Даже не возможно а точно - убрав эту строку полностью поиск не вырезает символ @  - но эта функция вроде не только для поиска в админке.. Поэтому надо сделать по человечески..

Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...