Борьба со спамом - php mail() для Free

Информация от администрации для пользователей о предстоящих изменениях, возможных проблемах, и т.п.

Інформація від адміністрації для користувачів щодо запланованих змін, можливих проблем, тощо.
oa-cru
Сообщения: 44
Зарегистрирован: Чт дек 15, 2016 5:38 pm
Пол: Не указан
Агент пользователя: Chrome Windows 1366x768

Борьба со спамом - php mail() для Free

Сообщение oa-cru »

nikolai2 писал(а):Здравствуйте! подскажите пожалуйста, использую движок phpBB 3.2 где именно и какой файл править что бы работала почта
Нужно внести изменения в includes/functions_messenger.php - вписать заголовок "От" и в нем указать почтовый адрес, который создан в панели управления хостинга в закладке "Почта".
Мы уже сделали это для Вас: вписали в файл includes/functions_messenger.php строчку $headers[] = 'From: admin@niksat.tk' . "\r\n". Также мы создали для Вас тестовый почтовый ящик. Проверьте, пожалуйста, все ли в порядке.
Присоединяйтесь к нам на Facebook или vKontakte и получайте наши эксклюзивные предложения, а также будьте в курсе важных событий и новостей мира веб-хостинга!
greenteamneo
Сообщения: 2
Зарегистрирован: Ср фев 01, 2017 11:36 am
Пол: Не указан
Агент пользователя: Firefox Linux 1600x900

Борьба со спамом - php mail() для Free

Сообщение greenteamneo »

Использую на сайте phph обработчик, который принимает json данные и отправляет на почту. Хедер для "борьбы со спамом добавил". Скрипт проходит тест и завершается успехом, но на почту сообщения не приходят. Идеи закончились. Помогите, пожалуйста

Код: Выделить всё

<?php
if ($_POST) { // eсли пeрeдaн мaссив POST
	$name = htmlspecialchars($_POST["name"]); // пишeм дaнныe в пeрeмeнныe и экрaнируeм спeцсимвoлы
	$phone = htmlspecialchars($_POST["phone"]);
	
	$json = array(); // пoдгoтoвим мaссив oтвeтa
	if (!$name or !$phone) { // eсли хoть oднo пoлe oкaзaлoсь пустым
		$json['error'] = 'Вы зaпoлнили нe всe пoля!'; // пишeм oшибку в мaссив
		echo json_encode($json); // вывoдим мaссив oтвeтa 
		die(); // умирaeм
	}
	

	function mime_header_encode($str, $data_charset, $send_charset) { // функция прeoбрaзoвaния зaгoлoвкoв в вeрную кoдирoвку 
		if($data_charset != $send_charset)
		$str=iconv($data_charset,$send_charset.'//IGNORE',$str);
		return ('=?'.$send_charset.'?B?'.base64_encode($str).'?=');
	}
	/* супeр клaсс для oтпрaвки письмa в нужнoй кoдирoвкe */
	class TEmail {
	public $from_email;
	public $from_name;
	public $to_email;
	public $to_name;
	public $subject;
	public $data_charset='UTF-8';
	public $send_charset='windows-1251';
	public $body='';
	public $type='text/plain';

	function send(){
		$dc=$this->data_charset;
		$sc=$this->send_charset;
		$enc_to=mime_header_encode($this->to_name,$dc,$sc).' <'.$this->to_email.'>';
		$enc_subject=mime_header_encode($this->subject,$dc,$sc);
		$enc_from=mime_header_encode($this->from_name,$dc,$sc).' <'.$this->from_email.'>';
		$enc_body=$dc==$sc?$this->body:iconv($dc,$sc.'//IGNORE',$this->body);
		$headers = "From: info@alliance-test.zzz.com.ua \r\n";
		$headers='';
		$headers.="Mime-Version: 1.0\r\n";
		$headers.="Content-type: ".$this->type."; charset=".$sc."\r\n";
		$headers.="From: ".$enc_from."\r\n";
		return mail($enc_to,$enc_subject,$enc_body,$headers);
		
	}

	}

	$emailgo= new TEmail; // инициaлизируeм супeр клaсс oтпрaвки
	$emailgo->from_email= 'Название сайта'; // oт кoгo
	$emailgo->from_name= 'Тeстoвaя фoрмa';
	$emailgo->to_email= 'alliance.trade.ua@gmail.com'; // кoму
	$emailgo->subject= $subject; // тeмa
	$emailgo->body= $name;
	$emailgo->body= $phone;  // сooбщeниe
	$emailgo->send(); // oтпрaвляeм

	$json['error'] = 0; // oшибoк нe былo

	echo json_encode($json); // вывoдим мaссив oтвeтa
} else { // eсли мaссив POST нe был пeрeдaн
	echo 'GET LOST!'; // высылaeм
}
?>
voleg
Сообщения: 8
Зарегистрирован: Чт мар 24, 2016 4:40 pm
Пол: Мужчина
Агент пользователя: Firefox Windows 1280x1024

Борьба со спамом - php mail() для Free

Сообщение voleg »

greenteamneo писал(а): $headers = "From: info@alliance-test.zzz.com.ua \r\n";
$headers='';
Тут вы создали нужную строчку, а потом обнулили. А где собственно вы ее создали опять? :? Проверьте значение $headers перед вызовом функции mail.
scorphost
Сообщения: 39
Зарегистрирован: Ср окт 26, 2016 8:50 am
Пол: Мужчина
Агент пользователя: Chrome Linux 1280x1024

Борьба со спамом - php mail() для Free

Сообщение scorphost »

Думаю, это у Вас механическая опечатка, voleg прав, должно быть примерно так:

Код: Выделить всё

$enc_body=$dc==$sc?$this->body:iconv($dc,$sc.'//IGNORE',$this->body);
$headers ='';
$headers.= "From: info@alliance-test.zzz.com.ua \r\n";
$headers.= "Mime-Version: 1.0\r\n";
scorphost
Сообщения: 39
Зарегистрирован: Ср окт 26, 2016 8:50 am
Пол: Мужчина
Агент пользователя: Chrome Linux 1280x1024

Борьба со спамом - php mail() для Free

Сообщение scorphost »

А еще более информативно и красивее так. Меньше механических ошибок имхо, дело вкуса, как по мне, то более читабельно:

Код: Выделить всё

define('eol', "\r\n");
// формируем элемент заголовка на основе ключа и значения
function nice(& $val, $key)
{
	$val = ucfirst($key). ': '. trim($val);
}
// Массив заголовков
$Headers = Array
(
	'from' => 'info@alliance-test.zzz.com.ua',
	'Mime-Version' => '1.0',
	// ...и так далее исходя из контекста
);
// обходим все элементы массива и формируем новое значение заголовка вида key: field
array_walk($Headers, 'nice');
// соединяем все заголовки при помощи EOL
$header = implode(eol, $Headers). eol;
hammm
Сообщения: 4
Зарегистрирован: Сб мар 04, 2017 5:55 pm
Пол: Не указан
Агент пользователя: Chrome Windows 1024x768

Борьба со спамом - php mail() для Free

Сообщение hammm »

Добрый день, подскажите пожалуйста, использую бесплатный хостинг, форма обратной связи не отправляет эмэйл на почту. Могу ли я использовать данные функции? Код отредактровал согласно правилам указанным в FAQ. http://www.fishingkr.adr.com.ua/feedback.php
Спасибо
smersh
Пол: Не указан
Агент пользователя: Chrome Linux 1366x768

Борьба со спамом - php mail() для Free

Сообщение smersh »

Здравствуйте! Да, для отправки писем с сайта используйте функцию mail() c заголовком, содержащим адрес admin@fishingkr.adr.com.ua.
hammm писал(а):Добрый день, подскажите пожалуйста, использую бесплатный хостинг, форма обратной связи не отправляет эмэйл на почту. Могу ли я использовать данные функции? Код отредактровал согласно правилам указанным в FAQ. http://www.fishingkr.adr.com.ua/feedback.php
Спасибо
hammm
Сообщения: 4
Зарегистрирован: Сб мар 04, 2017 5:55 pm
Пол: Не указан
Агент пользователя: Chrome Windows 1024x768

Борьба со спамом - php mail() для Free

Сообщение hammm »

smersh писал(а):Здравствуйте! Да, для отправки писем с сайта используйте функцию mail() c заголовком, содержащим адрес admin@fishingkr.adr.com.ua.
hammm писал(а):Добрый день, подскажите пожалуйста, использую бесплатный хостинг, форма обратной связи не отправляет эмэйл на почту. Могу ли я использовать данные функции? Код отредактровал согласно правилам указанным в FAQ. http://www.fishingkr.adr.com.ua/feedback.php
Спасибо

Спасибо все работает.
mensaccessories24
Сообщения: 3
Зарегистрирован: Сб мар 18, 2017 5:05 pm
Пол: Не указан
Агент пользователя: Chrome Windows 1600x900

Борьба со спамом - php mail() для Free

Сообщение mensaccessories24 »

В какой именно файл нужно добавлять эту строчку кода?
Аватара пользователя
vozduch
Сообщения: 795
Зарегистрирован: Пт янв 08, 2016 11:47 am
Пол: Женщина
Агент пользователя: Chrome Linux 1366x768

Борьба со спамом - php mail() для Free

Сообщение vozduch »

Ответили в этой теме.
Всегда рада помочь,
Мира,
Служба поддержки ZZZ
Приєднуйтесь до нас на Facebook або vKontakte та отримуйте наші ексклюзивні пропозиції, а також будьте в курсі важливих подій і новин світу веб-хостингів!
Ответить

Вернуться в «Объявления и новости / Оголошення та новини»