Важная информация
Показано с 1 по 2 из 2

Тема: Скрипт для декода base64

  1. #1 Скрипт для декода base64 
    Новичок
    Регистрация
    28.11.2018
    Сообщений
    1
    Сказал(а) спасибо
    0
    Поблагодарили 0 раз(а) в 0 сообщениях
    Всем привет!
    Делаю скрипт для получения почты через pop3 но я не знаю декодировать base64 в котором зашифрован код
    Прошу помощи


    PHP Code:
    1. require_once "lib/mime.php";
    2.  
    3. $mime = new mime_parser_class;
    4.  
    5. [Ссылки могут видеть только зарегистрированные пользователи. ](E_ALL ^ E_DEPRECATED);
    6.  
    7. // Включаем библиотеку mime parser
    8.  
    9.  
    10. [Ссылки могут видеть только зарегистрированные пользователи. ](E_ALL ^ E_WARNING);
    11. [Ссылки могут видеть только зарегистрированные пользователи. ]();
    12.  
    13. // Email хостинг провайдера получил здесь
    14. // http://api.hostinger.com.ua/redir/401579
    15.  
    16. $address = "pop3.mail.ru";  // адрес pop3-сервера
    17. $port    = "110";          // порт (стандартный pop3 - 110)
    18.  
    19. $login   = "[Ссылки могут видеть только зарегистрированные пользователи. ]";    // логин к ящику
    20. $pwd     = "11111";    // пароль к ящику
    21.  
    22. try {
    23.   
    24.     // Создаем и соединяем сокет к серверу
    25.     echo '<p>Соединение с \''.$address.':'.$port.'\' ... ';
    26.     $socket = [Ссылки могут видеть только зарегистрированные пользователи. ]($address, $port, $errno, $errstr);
    27.     if (!$socket) {
    28.         throw new Exception('fsockopen() failed: '.$errstr."<br>");
    29.     }
    30.     echo "открыто! </p>";
    31.   
    32.     // Читаем +OK
    33.     read_pop3_answer($socket);
    34.  
    35.     // Делаем авторизацию
    36.     echo '<p>Авторизация ... ';
    37.  
    38.     write_pop3_response($socket, 'USER '.$login);
    39.     read_pop3_answer($socket); // ответ сервера
    40.   
    41.     write_pop3_response($socket, 'PASS '.$pwd);
    42.     read_pop3_answer($socket); // ответ сервера
    43.  
    44.     echo "прошла успешно! </p>";
    45.   
    46.     // Определяем кол-во сообщений в ящике и общий размер
    47.     write_pop3_response($socket, 'STAT');
    48.     $answer = read_pop3_answer($socket); // ответ сервера
    49.   
    50.     [Ссылки могут видеть только зарегистрированные пользователи. ]('!([0-9]+)[[:space:]]([0-9]+)!is', $answer, $matches);
    51.     $total_count = $matches[1];
    52.   
    53.     echo "<p>".'Всего сообщений: <strong>'.$total_count."</strong></p>";
    54.   
    55.     if ($total_count > 0) {
    56.         echo '<p>Общий размер: <strong>'.[Ссылки могут видеть только зарегистрированные пользователи. ]($matches[2] / 1024)." Kb</strong></p>";
    57.     }
    58.   
    59.     $iii = 0;
    60.   
    61.     // Просматриваем параметры каждого сообщения
    62.     for ($i = 1; $i <= $total_count; $i++)
    63.     {
    64.       
    65.         write_pop3_response($socket, 'TOP '.$i.' 0');
    66.         $answer = read_pop3_answer($socket, true);
    67.       
    68.         write_pop3_response($socket, 'LIST '.$i);
    69.         $answer2 = read_pop3_answer($socket);
    70.       
    71.         // Линия
    72.         echo '<HR NOSHADE WIDTH="100%" COLOR="#023C47" SIZE="10">';
    73.       
    74.         // Все сообщение      
    75.         echo "<p>СООБЩЕНИЯ $i НАЧАЛО answer</p>";
    76.                       
    77.         echo "<pre style=' font-size:20px; font-family:Calibri; padding-left: 6px;'>answer: $answer</pre>";
    78.       
    79.         echo "<p>СООБЩЕНИЯ $i КОНЕЦ answer</p>";
    80.       
    81.         // Определяем тему сообщения    
    82.         [Ссылки могут видеть только зарегистрированные пользователи. ]('!Subject:[[:space:]]+(.*?)\n+.*!is', $answer, $matches);
    83.       
    84.         $msg_subject = $matches[1];
    85.  
    86.                   
    87.         echo '<p>Сообщение '.$i.' - Тема: <strong>'.$msg_subject."</strong></p>";
    88.       
    89.         // Определяем содержание сообщения    
    90.         if ([Ссылки могут видеть только зарегистрированные пользователи. ]("!Content preview!ism",$answer))
    91.         {
    92.             [Ссылки могут видеть только зарегистрированные пользователи. ]('!Content preview:[[:space:]]+(.*?)\[...\]!is', $answer, $matches);
    93.             $msg_content_preview = $matches[1];
    94.         }
    95.       
    96.         if(![Ссылки могут видеть только зарегистрированные пользователи. ]($msg_content_preview))
    97.         {
    98.             $msg_content_preview = "-"; //  [Name: Name]
    99.         }
    100.       
    101.         echo '<p style="width:1000px;">Сообщение '.$i.' - Содержание: <strong>'.$msg_content_preview."</strong></p>";              
    102.           
    103.       
    104.         // Определяем дату сообщения
    105.         [Ссылки могут видеть только зарегистрированные пользователи. ]('!Date:[[:space:]]+(.*?)\n+.*!is', $answer, $matches);
    106.         $msg_date_answer = [Ссылки могут видеть только зарегистрированные пользователи. ]('d.m.Y H:i:s', [Ссылки могут видеть только зарегистрированные пользователи. ]($matches[1]));
    107.         echo '<p>Сообщение '.$i.' - Дата: <strong>'.$msg_date_answer."</strong></p>";    
    108.       
    109.         // Определяем отправителя сообщения Return          
    110.         [Ссылки могут видеть только зарегистрированные пользователи. ]('!Return-path:[[:space:]]+(.*?)\n+.*!is', $answer, $matches);
    111.         [Ссылки могут видеть только зарегистрированные пользователи. ]('|<(.*?)>|is', $matches[1], $matches3);
    112.         $return_path = $matches3[1];
    113.       
    114.         echo '<p>Сообщение '.$i.' - Отправитель (Return-path): <strong>'.$return_path."</strong> </p>";
    115.       
    116.         // Определяем отправителя сообщения From
    117.         [Ссылки могут видеть только зарегистрированные пользователи. ]('!From:[[:space:]]+(.*?)\n+.*!is', $answer, $matches1);
    118.         [Ссылки могут видеть только зарегистрированные пользователи. ]('|<(.*?)>|is', $matches1[1], $matches2);
    119.  
    120.         // Определяем тип сообщения      
    121.         [Ссылки могут видеть только зарегистрированные пользователи. ]('!Content-Type:[[:space:]]+(.*?)\n+.*!is', $answer, $matches);
    122.         $msg_type = $matches[1];
    123.       
    124.         echo '<p> Сообщение '.$i.' - Тип: <strong>'.$msg_type."</strong></p>";
    125.                   
    126.         $ctype = [Ссылки могут видеть только зарегистрированные пользователи. ](";",$msg_type);
    127.         $types = [Ссылки могут видеть только зарегистрированные пользователи. ]("/",$ctype[0]);
    128.         $maintype = [Ссылки могут видеть только зарегистрированные пользователи. ]([Ссылки могут видеть только зарегистрированные пользователи. ]($types[0])); // text или multipart
    129.         $subtype = [Ссылки могут видеть только зарегистрированные пользователи. ]([Ссылки могут видеть только зарегистрированные пользователи. ]($types[1])); // а это подтип(plain, html, mixed)
    130.  
    131.         // Определяем получателя сообщения    
    132.         [Ссылки могут видеть только зарегистрированные пользователи. ]('!To:[[:space:]]+(.*?)\n+.*!is', $answer, $matches);
    133.         $msg_SetFrom_email = $matches[1];
    134.         echo '<p> Сообщение '.$i.' - Получатель: <strong>'.$msg_SetFrom_email."</strong></p>";          
    135.       
    136.         // Определяем размер сообщения
    137.         [Ссылки могут видеть только зарегистрированные пользователи. ]('!^\+[A-Za-z]+[[:space:]]+[0-9]+[[:space:]]+([0-9]+)!is', $answer2, $matches);
    138.         $msg_size = [Ссылки могут видеть только зарегистрированные пользователи. ]($matches[1] / 1024);
    139.         echo '<p> Сообщение '.$i.' - Размер: <strong>'.$msg_size."</strong> Kb</p>";        
    140.  
    141.     }
    142.   
    143.     echo '<HR NOSHADE WIDTH="100%" COLOR="#023C47" SIZE="10">';
    144.   
    145.     // Отсоединяемся от сервера
    146.     echo "<p>".'Соединение ... ';
    147.   
    148.     write_pop3_response($socket, 'QUIT');
    149.     read_pop3_answer($socket); // ответ сервера
    150.   
    151.     echo "закрыто.</p>";
    152.   
    153. } catch (Exception $e) {
    154.     echo "\nError: ".$e->getMessage();
    155. }
    156.  
    157. if ([Ссылки могут видеть только зарегистрированные пользователи. ]($socket)) {
    158.     [Ссылки могут видеть только зарегистрированные пользователи. ]($socket);
    159. }
    160.  
    161. // Функция для чтения ответа сервера. Выбрасывает исключение в случае ошибки
    162. function read_pop3_answer($socket, $top = false) {
    163.     $read = [Ссылки могут видеть только зарегистрированные пользователи. ]($socket);
    164.   
    165.     if ($top) {
    166.   
    167.         // Если читаем заголовки
    168.         $line = $read;
    169.       
    170.         while (![Ссылки могут видеть только зарегистрированные пользователи. ]("^\.\r\n", $line)) {
    171.       
    172.             $line  = [Ссылки могут видеть только зарегистрированные пользователи. ]($socket);
    173.             $read .= $line;
    174.           
    175.         }
    176.       
    177.     }
    178.   
    179.     if ($read{0} != '+') {
    180.         if (![Ссылки могут видеть только зарегистрированные пользователи. ]($read)) {
    181.             throw new Exception('<p>POP3 failed: '.$read."</p>");
    182.         } else {
    183.             throw new Exception('<p>Unknown error'."</p>");
    184.         }
    185.     }
    186.   
    187.     return $read;
    188. }
    189.  
    190. // Функция для отправки запроса серверу
    191. function write_pop3_response($socket, $msg) {
    192.     $msg = $msg."\r\n";
    193.     [Ссылки могут видеть только зарегистрированные пользователи. ]($socket, $msg);
    194. }
    195. echo "</div>";
    Ответить с цитированием  
     

  2. #2  
    Супер модератор Аватар для >Quiet Snow<
    Регистрация
    11.04.2011
    Адрес
    Планета земля
    Сообщений
    3,995
    Сказал(а) спасибо
    1,871
    Поблагодарили 1,004 раз(а) в 862 сообщениях
    Записей в блоге
    1
    Гугл говорит, что ПХП это уже умеет:
    http://php.net/manual/ru/function.base64-decode.php
    Обучение прикладному программированию(по skype), качественно, недорого, 18+, вопросы в личку.
    «Если вы ничего не сделаете, я уверяю вас, ничего и не произойдёт» © Жак Фреско
    Ограниченно модерирую.
    Ответить с цитированием  
     

Информация о теме
Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Как запустить данный скрипт?
    от DJim tun в разделе Общие вопросы программирования
    Ответов: 1
    Последнее сообщение: 20.08.2018, 10:03
  2. Нужна программа или скрипт, срочно!
    от Russel в разделе Фриланс
    Ответов: 0
    Последнее сообщение: 04.04.2018, 23:14
  3. Нужно установить скрипт на wordpress
    от Георгий Новоселов в разделе Общие вопросы программирования
    Ответов: 1
    Последнее сообщение: 02.04.2018, 16:27
  4. Скрипт для поднятие объявления вверх
    от Сергей Иванов в разделе Общие вопросы web-разработки
    Ответов: 9
    Последнее сообщение: 29.04.2016, 11:35
  5. Скрипт для поднятие объявления вверх
    от Сергей Иванов в разделе Фриланс
    Ответов: 0
    Последнее сообщение: 27.04.2016, 22:55
Ваши права
  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •