Отправка почты через gmail

kuzmit42

Мастер
Регистрация
9 Янв 2013
Сообщения
132
Реакции
31
В общем опишу задачу, не знаю реально это или нет. Поделитесь мнениями кто что знает.
Задача.
Есть php форма, с темой и сообщением. Эту форму нужно отправить через gmail. т.е. с моего сайта, но отправить с gmail. Из условий - нужно сделать так чтобы отправленное письмо было в исходящих в аккаунте gmail. И дальнейшая переписка велась уже через аккаунт Gmail.
Это возможно или нет ?
Отпишитесь кто что знает, если будут ссылки на реализацию вообще супер.
Спасибо с ув. Дмитрий!
 
Насколько помню - в исходящих письмо будет сохранятся, если отправляется посредством smtp, фнукцией phpmail - не сохраняется.
Пример формы - ну например вот Для просмотра ссылки Войди или Зарегистрируйся
 
Пользуюсь этим кодом для описанной задачи:
PHP:
 require_once('../phpmailer/class.phpmailer.php');
  $Mail = new PHPMailer();
  $Mail->IsSMTP(); // Use SMTP
  $Mail->Host        = "smtp.gmail.com"; // Sets SMTP server
  $Mail->SMTPDebug  = 0; // 2 to enable SMTP debug information
  $Mail->SMTPAuth    = TRUE; // enable SMTP authentication
  $Mail->SMTPSecure  = "tls"; //Secure conection
  $Mail->Port        = 587; // set the SMTP port
  $Mail->Priority    = 3; // Highest priority - Email priority (1 = High, 3 = Normal, 5 = low)
  $Mail->CharSet    = 'UTF-8';
  $Mail->Encoding    = '8bit';
  $Mail->Subject    = "Тема письма";
  $Mail->ContentType = "text/html; charset=utf-8\r\n";
  $Mail->From        = 'mail@gmail.com';
  $Mail->Username    = 'mail@gmail.com'; // SMTP account username
  $Mail->Password    = 'password'; // SMTP account password
  $Mail->FromName    = 'From me';
  $Mail->WordWrap    = 900; // RFC 2822 Compliant for Max 998 characters per line
$Mail->AddAddress('email');

$str_text = "Текст сообщения";

  $Mail->isHTML( TRUE );
  $Mail->Body    = stripslashes($str_text);
  $Mail->AltBody = stripslashes(strip_tags($str_text));
  $Mail->Send();
  $Mail->SmtpClose();

  if ( $Mail->IsError() ) {
    echo "ERROR<br /><br />";
  }
 
В общем опишу задачу, не знаю реально это или нет. !
Пользовался как-то плагином к Wordpress, который рассылал письма подписчикам именно через gmail - так что реально.
 
А как по поводу ограничения на рассылку?
Раньше, после нескольких отправленных писем (средствами PHP), gmail запрещал отсылку писем и нужно было через его web интерфейс вводить капчу.
Или это относится/относилось только к свежим аккаунтам?
 
При помощи приведенного мной выше кода я пробовал отправлять рассылку при этом участников рассылки добавлял к письму в качестве скрытых получателей (в районе нескольких десятков по-моему можно добавить таких получателей к одному письму).
 
Пользуюсь этим кодом для описанной задачи:
Скрытое содержимое доступно для зарегистрированных пользователей!
Скрытое содержимое доступно для зарегистрированных пользователей!


Воспользовался этим кодом. Все отлично все работает.
Но хочу его немного допилить.
Ну и вот интересуют такие вопросы.
1. Как отправить письмо на несколько адресов ? было бы круто если бы их можно было перечислять через запятую. Как думаете - можно ?
2. Можно ли положить этот файл на сервер как пхп скрипт, и передавать в него параметры через ссылку ?
Ну например файл называем mail.php - обращаемся к нему так Для просмотра ссылки Войди или Зарегистрируйся
Т.е. через ссылку передается адрес сайта и email на который отправляем почту.
Это реально ?
 
Воспользовался этим кодом. Все отлично все работает.
Но хочу его немного допилить.
Ну и вот интересуют такие вопросы.
1. Как отправить письмо на несколько адресов ? было бы круто если бы их можно было перечислять через запятую. Как думаете - можно ?
Добавление скрытых получателей:
$Mail->AddBCC('mail@site.ru');

2. Можно ли положить этот файл на сервер как пхп скрипт, и передавать в него параметры через ссылку ?
Ну например файл называем mail.php - обращаемся к нему так Для просмотра ссылки Войди или Зарегистрируйся
Т.е. через ссылку передается адрес сайта и email на который отправляем почту.
Это реально ?
Реально конечно. В таком случае в самом скрипте в том месте, где должна быть к примеру почта, должно быть обращение к параметру - $_GET['mail']
 
Назад
Сверху