Подписаться на обновление блога через RSS Подписаться на обновление блога через Twitter Подписаться на мой канал FriendFeed

Отправляем письмо с аттачем PHP

Сегодня Atlantweb попросил доработать форму отправки сообщения на почтовый ящик, нужно было добавить возможность аттача изображения. Казалось бы задача 8 класа, но не тут то было, я так привык писать скрипты под Human Emulator - легко и просто, что забыл самого простого. Полазил в сети, мало толкового нашел, часть скриптов не работала.

Выкладываю скрипт, который действительно работает и позволяет отправлять письма на почту с аттачем:





<?php

if (isset($_POST['sub'])){

/*формируем переменные, которые содержат данные, полученные с html-формы*/

$email = "zircool@inbox.ru";


$to = "zircool@inbox.ru"; // адрес, куда слать письмо

// формируем Тему письма

$subject = "Новый заказ на сайте";



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



// Конвертируем ее в кодировку KOI8-R

$subject = convert_cyr_string ($subject,w,k);

/* А теперь конвертируем ее в MIME-кодировку, заодно указывая, то это KOI8-R */

$subject = '=?koi8-r?B?'.base64_encode($subject).'?=';

// Конвертируем тело письма в KOI8-R

$msg = convert_cyr_string ($body,w,k);




if (!empty($_FILES['file_name']['name'])){

/* Составляем заголовки – служебную часть письма, где указываем тип кодировки и тип самого письма (plain text, т.е. простой текст) */
$un        = strtoupper(uniqid(time()));

$headers = 'MIME-Version: 1.0' . "\r\n";
$headers  .= "Content-Type:multipart/mixed;";
$headers .= 'To: '.$to. "\r\n";
$headers .= 'From:' .$email. "\r\n";
$headers  .= "boundary=\"----------".$un."\"\n\n";


    $body   = "------------".$un."\nContent-Type:text/plain;charset=koi8-r\n";
    $body   .= "Content-Transfer-Encoding: Quot-Printed\n\n".$msg."\n\n";
    foreach($_FILES as $value)
    {
    $body   .= "------------".$un."\n";
    $body   .= "Content-Type: ".$value['type'].";";
    $body   .= "name=\"".basename($value['name'])."\"\n";
    $body   .= "Content-Transfer-Encoding:base64\n";
    $body   .= "Content-Disposition:attachment;";
    $body   .= "filename=\"".basename($value['name'])."\"\n\n";
    $body   .= chunk_split(base64_encode(file_get_contents($value['tmp_name'])))."\n";
    }
}


else{

  /* Составляем заголовки – служебную часть письма, где указываем тип кодировки и тип самого письма (plain text, т.е. простой текст) */

  $headers = 'MIME-Version: 1.0' . "\r\n";

  $headers .= 'Content-type: text/plain; charset=koi8-r' . "\r\n";

  $headers .= 'To: '.$to. "\r\n";

  $headers .= 'From:' .$email. "\r\n";

  $body =$msg;




}

// Отправляем письмо



if (mail($to,$subject, $body, $headers))

{

echo "ОК";



}

else

{

echo "Ошибка";

}


}
?>




Подумываю купить себе выделенный сервер для работы. Очень уж много трафика уходит на работу разных регеров и парсеров. Остановился на Inferno, цены у них не кусаются и сервер уже себе присмотрел, как раз подходит под мои нужды. Посмотрим что из этого получится.


Подтверждение регистрации на mail.ru. Скрипт Human Emulator

Всем доброго времени суток. Столкнулся с одной маленькой проблемкой, купил у человека аккуанты для одного сервиса (1000 штук). Но оказалось что у половины аккуантов не подтверждена регистрация. Регистрация подтверждается через e-mail. Саппорт в icq не отвечал, пришлось всю работу сделать за него wink На помощь мне пришел Human Emulator. И вот какой скрипт получился:


<?php

// The following code is required to properly run XWeb Human Emulator
require("../Templates/xweb_human_emulator.php");

$accs = file("logins.txt");

for ($r=0;$r<count($accs);$r++){

    list($url,$login,$pass,$mail,$mail_pass) = split(";",$accs[$r]);



    list($mail_name,$domen) = split("@",$mail);

    $mail_name = trim($mail_name);
    $mail_pass = trim($mail_pass);



   $my_box = imap_open("{pop.mail.ru/pop3:110}",$mail_name, $mail_pass);




   $mailbody = imap_body($my_box, 2);



   $mailbody =  imap_base64($mailbody);


   preg_match_all('#http://(.+?)\s#', $mailbody,$mat3);

  for($i=0;$i<count($mat3[0]);$i++){

   if(strpos($mat3[0][$i],"/confirm/")!==FALSE) {

     $link = trim($mat3[0][$i]);


     $browser->navigate($link);
     $browser->wait_for(60,1);

     $goodbody =  $webpage->get_body();

     if(strpos($goodbody,"Спасибо! Email для")!==FALSE){

     $fp = fopen ("realgood.txt", "a+");
     fwrite ($fp, $lj[$r]);
     fclose ($fp);

     }else{

     $fp = fopen ("realbad.txt", "a+");
     fwrite ($fp, $lj[$r]);
     fclose ($fp);



     }

   }

  }

  
}

// Quit
$app->quit();




?>



Скрипт берет строку из файла с аккуантами, разбивает её, затем вытаскивает из e-mail, логин для авторизации и через IMAP подключается к почтовому ящику. Открывает письмо под номером 2 т.к. Mail аккуанты свежие то первое письмо это поздравления от администрации mail.ru а вот второе письмо это письмо с подтверждением регистрации. Открываем письмо и извлекаем из него все ссылки а затем ищем ссылку, которая имеет строку confirm, в вашем случае это может быть другое слово, главное правильно выделить ссылку, которая подтверждает регистрацию. Если ссылка имеет строку confirm, тогда переходим по ней для подтверждения регистрации . Дальше идет функция записи активированных аккуантов в файл.

Данный метод, на мой взгляд, самый практичный и удобный. Пытался написать подтверждение через макрос, но там только код авторизации в 2 раза объемнее чем этот. И так вы сэкономите много трафика wink


P.S. Приятно, скрипт для поднятия PR купили уже 15 человек, осталось еще 5 копий. После 20 покупок скрипт не будет продаваться, дабы не "убить тему".

FAQ по скрипту для поднятия PR

Доброго времени суток. По просьбе покупателей, напишу маленький FAQ по скрипту.

1. Куда вставить полученные аккуанты, в виде бонуса?
Полученные аккуанты, нужны для авторизации и последующего постинга на трастовом PR ресурсе, их необходимо вставить в файл logins.txt

2. Сколько статей можно постить с одного аккуанта?
Советую не больше 4 статей в сутки, что бы не вызывать подозрение.

3. Какого вида должны быть ссылки в статьях?
Ссылки должны быть без анкоров, "голые". Пример: http://zircool.ru

4. Статьи добавляются на один ресурс или несколько?
Статьи добавляются на один ресурс, но страница, куда добавляются статьи, дублируется несколько раз под разными адресами, и каждая из дублируемых страниц имеет свой PR.

5.Как часто мне нужно добавлять статьи что бы добиться желаемого результата?
Для одного продвигаемого ресурса минимум одна статья в день. Но чем больше, тем лучше wink

6. Статьи должны быть уникальными или копипаст?
Желательно что бы статьи были уникальными.

7. Как должны быть оформлены статьи для постинга с помощью крона?
Статьи должны располагаться в папке articles, иметь расширение .txt, имя файла не имеет значение. Файл txt должен быть оформлен следующим образом:


Заголовок статьи - 1 строка
Текст
Текст
Текст
и т.д.



1 строка - Заголовок статьи, а все что ниже будет считаться текстом.

8. Сколько ссылок нужно вставлять в текст?
Желательно не больше 3.

9. Где я могу купить еще аккуанты для скрипта?
У меня wink 30 аккуантов - 1$

10. Обновление скрипта платное?
Для тех кто приобрел скрипт, обновление бесплатное, новые версии будут приходить на e-mail.

11. Ограничено ли число продаж скрипта?
Да число продаж скрипта ограничено. Запланировано продать 20 лицензий программы. Как только число продаж будет равно 20, скрипт снимается с продажи и больше продаваться не будет.

12. Даете ли вы гарантии в поднятии PR.
Гарантии дать не могу. Данным методом прокачивались несколько сайтов и после апдейта PR они получили +5.


Скрипт для поднятия PR+4 v.2

Обновил скрипт для поднятия PR +4. Для тех кто не знаком кратко опишу функционал скрипта. Скрипт постит Ваши статьи с сылками продвигаемого сайта на PR трастовом ресурсе. Данным методом прокачивались некоторые сайты, вот пример одного из них kinodramma.ru.



В новую версию скрипта добавил возможность постит сатьи с помощью крона, т.е. данная возможность избавит вас от рутинной работы. Для настройки крона, необходимо в папку articles добавить .txt файлы со статьями, причем первая строка в файле будет Заголовком статьи, а все что ниже будет расцениваться как текст статьи. После наполнения папки articles статьями, выставляем крон на файл cron.php и отдыхаем wink Как только статья добавляется на трастовую площадку она автоматом удаляется из папки articles .

Всем покупателям выслал обновленную версию скрипта на e-mail.


Всем кто, еще не купил скрипт будет полезно почитать отзывы/обзоры:


http://merzopakost.ru/2010/08/skript-dlya-narashhivaniya-pr/
http://profitinweb.com/skript-podnyatiya-pr.html




Купить скрипт

Google - непонятный трафик jumping

Этот пост не познавательный, в нем я не буду выкладывать скрипты (что я очень люблю). Просто хотел задать вопрос оптимизаторам, СЕОшникам, которые занимаются грамотным продвижением и знакомы с особенностями поисковых систем. Так вот, бывают дни когда Google дает по 600 уников на мой блог по запросу redtube, вот выкладываю скрин статы из Liveinternet

Google - непонятный трафик jumping



Но дело в том что эти всплески не постоянны и после каждого такого всплекса Google дня 3-4 трафика дает очень мало.

Объясните с чем это может быть связано и как "обуздать" этот трафик или монетизировать?


Долгожданный АП ТИЦ 6.08.2010

Долгожданный АП ТИЦ 6.08.2010


Наконец-то долгожданный апдейт ТИЦ.. Было сделано много работы, жаль что до блога руки не дошли, но ничего все еще впереди. Итак коротко о результатах, мой первый дорвей, который я сделал на DLE с помощью модуля DLE Redtube Grabber получил 10, с помощью этого скрипта.

Для работы в Buypost зарегистрировал 4 блога и решил их раскрутить, писал статьи, читал чужие блоги и комментировал, добавлял друзей, результат работы очень порадовал, 3 блога получили +20 и один +10. Записи этих блогов так же програнял с помощью скрипта для поднятия PR и теперь с нетерпением жду апа PR, по моим подсчетам он должен быть совсем скоро.

Сегодня в клубе баблорубов читал пост с результатми апдейта, и был приятно удивлен увидев человека под ником debelov, Усатый рады тебя видеть в нашем сообществе. Клуб становится мозговым центром wink




Главная | Реклама на сайте | Статистика | Облако тегов | Yandex SiteMap | Карта сайта