Ответить Новая тема Новый опрос 
Всего: 3 < 1 2 3 >
 можно заблокировать не желательные Email
Алекс


Администратор
Сообщений: 4516
Откуда: Красноярск
Регистрация: 29-05-2009


16-03-2018 19:36
Цитата:( 24medok @ 16-03-2018 17:58 Смотреть сообщение )
Версия Prestahop 1.6.1.18



Вложения:

Вложения ContactController.php( Размер файла: 11.47KB Скачиваний: 220 )
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
RusBolik
Новичок
Сообщений: 62
Регистрация: 28-07-2016


24-03-2018 00:26
Алекс, этот php файл можно использовать на 1.6.1.6?
Такая же беда со спамом
 
Вне форума
ПМ 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Алекс


Администратор
Сообщений: 4516
Откуда: Красноярск
Регистрация: 29-05-2009


24-03-2018 11:52
Цитата:( RusBolik @ 24-03-2018 01:26 Смотреть сообщение )
на 1.6.1.6



Вложения:

Вложения ContactController.php( Размер файла: 14.55KB Скачиваний: 209 )
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
24medok
Новичок
Сообщений: 11
Регистрация: 06-03-2018


07-04-2018 13:22
Новый вид спама :

"ВАМ БОНУС
ПОЛУЧИТЕ ЗДЕСЬ - - BJRBE.TK (cкопиpоΒать u пεрeйmи)"
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Алекс


Администратор
Сообщений: 4516
Откуда: Красноярск
Регистрация: 29-05-2009


07-04-2018 16:26
Цитата:( 24medok @ 07-04-2018 14:22 Смотреть сообщение )
Новый вид спама
Убрать любую возможность пересылать сообщения с контактной формы PrestaShop описывал несколькими сообщениями ранее.

Удалить необходимо следующий код:
Код:
|| !Mail::Send($this->context->language->id, 'contact_form', ((isset($ct) && Validate::isLoadedObject($ct)) ? sprintf(Mail::l('Your message has been correctly sent #ct%1$s #tc%2$s'), $ct->id, $ct->token) : Mail::l('Your message has been correctly sent')), $var_list, $from, null, null, null, $file_attachment, null, _PS_MAIL_DIR_, false, null, null, $contact->email)

и
Код:
Mail::Send($this->context->language->id, 'contact_form', ((isset($ct) && Validate::isLoadedObject($ct)) ? sprintf(Mail::l('Your message has been correctly sent #ct%1$s #tc%2$s'), $ct->id, $ct->token) : Mail::l('Your message has been correctly sent')), $var_list, $from, null, null, null, $file_attachment);


Если включена внутренняя система сообщений - спам запишется, но не будет отправлен на эл.адрес.
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
mrbizon
Новичок
Сообщений: 1
Регистрация: 25-06-2018


25-06-2018 14:54
А не подскажете, как в 1.6.1. правильно удалить отсылку, приложил кусок побольше

Цитата:

if (empty($contact->email))
Mail::Send($this->context->language->id, 'contact_form', ((isset($ct) && Validate::isLoadedObject($ct)) ? sprintf(Mail::l('Your message has been correctly sent #ct%1$s #tc%2$s'), $ct->id, $ct->token) : Mail::l('Your message has been correctly sent')), $var_list, $from, null, null, null, $fileAttachment);
else
{
if (!Mail::Send($this->context->language->id, 'contact', Mail::l('Message from contact form').' [no_sync]',
$var_list, $contact->email, $contact->name, $from, ($customer->id ? $customer->firstname.' '.$customer->lastname : ''),
$fileAttachment) ||
!Mail::Send($this->context->language->id, 'contact_form', ((isset($ct) && Validate::isLoadedObject($ct)) ? sprintf(Mail::l('Your message has been correctly sent #ct%1$s #tc%2$s'), $ct->id, $ct->token) : Mail::l('Your message has been correctly sent')), $var_list, $from, null, $contact->email, $contact->name, $fileAttachment))
$this->errors[] = Tools::displayError('An error occurred while sending the message.');
}
}

if (count($this->errors) > 1)
array_unique($this->errors);
else
$this->context->smarty->assign('confirmation', 1);
}
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
ruleoffdv


Cпециалист
Сообщений: 209
Регистрация: 05-05-2013


20-12-2018 14:07
Цитата:( Алекс @ 16-03-2018 15:42 Смотреть сообщение )
Цитата:( 24medok @ 16-03-2018 15:14 Смотреть сообщение )
Спам не идет, но форма обратной связи выдает ошибку 500.
Приложите получившийся файл.
Проверю наличие ошибок и исправлю при необходимости.

Выявилась новя пролема.
Регистрируют аккаунт и в адрес поля клиента вставляют ссылки и спам
 
Вне форума
ПМ 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Алекс


Администратор
Сообщений: 4516
Откуда: Красноярск
Регистрация: 29-05-2009


20-12-2018 15:27
Цитата:( ruleoffdv @ 20-12-2018 15:07 Смотреть сообщение )
Выявилась новя пролема.
Регистрируют аккаунт и в адрес поля клиента вставляют ссылки и спам

Откройте файл /controllers/front/AuthController.php и после:
Код:
if (!Tools::getValue('is_new_customer', 1) && !Configuration::get('PS_GUEST_CHECKOUT_ENABLED'))
    $this->errors[] = Tools::displayError('You cannot create a guest account..');

добавьте подобный код:
Код:
if (Tools::getValue('address1') && strpos(Tools::getValue('address1'), 'http') !== false)
    $this->errors[] = Tools::displayError('You cannot create account.');
if (Tools::getValue('other') && strpos(Tools::getValue('other'), 'http') !== false)
    $this->errors[] = Tools::displayError('You cannot create account.');
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
leny
Новичок
Сообщений: 1
Регистрация: 27-07-2014


22-12-2018 18:26
Цитата:( Алекс @ 21-01-2018 17:45 Смотреть сообщение )
В некоторых случаях изменён скрипт рассылки (передаются данные HTTP_USER_AGENT и HTTP_REFERER).
Можно добавить еще одно условие:
Код:
if (!$this->context->customer->isLogged() && Tools::getValue('id_contact') && Tools::getValue('from') && $message)
{
    if(preg_match("/(".implode('|', ['www.', 'http']).")/is", $message) || empty($_SERVER['HTTP_USER_AGENT']) || empty($_SERVER['HTTP_REFERER']) || Tools::getValue('fileUpload') == Tools::getValue('from'))
    {
        $this->errors[] = Tools::displayError('SPAM');
    }
}


Во втором условии синтаксическая ошибка. Вроде скобка лишняя. Алекс проверь пожалуйста.
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Алекс


Администратор
Сообщений: 4516
Откуда: Красноярск
Регистрация: 29-05-2009


22-12-2018 18:45
Цитата:( leny @ 22-12-2018 19:26 Смотреть сообщение )
Во втором условии синтаксическая ошибка. Вроде скобка лишняя. Алекс проверь пожалуйста.

Код верен.
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Ответить Новая тема Новый опрос 
Всего: 3 < 1 2 3 >