Ir para conteúdo
Fórum Script Brasil
  • 0

email do gmail


The arlindo

Pergunta

2 respostass a esta questão

Posts Recomendados

  • 0

Não só tem jeito de logar como também de acessar informações internas como lista de contatos... Não só no gmail mas como qualquer serviço do Google usando CURL, como no exemplo abaixo:

<?php
       /**
        * Glogin 0.2
        * @uses Acesso ao Google Accounts
        * @return boolean
        * @package NRV
        * @subpackage Google
        * @author  Norivan Oliveira <norivan@sistemasgerenciais.com>
        * @since 12/2008
        */
       function GLogin($usuario, $senha) {

       // Checa se foram passados o nome de usuário e senha para função
           if (isset($usuario) and isset($senha)) { return false; }

           // inicializa CURL
           $ch = curl_init();
           curl_setopt($ch, CURLOPT_URL,"https://www.google.com/accounts/ServiceLoginAuth?service=mail");
           curl_setopt($ch, CURLOPT_REFERER, "");
           curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
           curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
           curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
           curl_setopt($ch, CURLOPT_HEADERFUNCTION, 'read_header');
           // resgata html do gmail
           $html = curl_exec($ch);
           
           $ref = array();
           $acao = "https://www.google.com/accounts/ServiceLoginAuth?service=mail";
           //analisa formulário de login:
           preg_match_all('/<input type="hidden"[^>]*name\="([^"]+)"[^>]*value\="([^"]*)"[^>]*>/si', $html, $ref);
           $valores = $ref[2];
           $params = "";
          
          $i=0;      
           foreach ($ref[1] as $nome) {
               $params .= "$nome=" . urlencode($valores[$i]) . "&";
               ++$i;
           }

           $usuario = urlencode($usuario);
           $senha = urlencode($senha);

           // envia dados de login
           curl_setopt($ch, CURLOPT_URL,$acao);
           curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
           curl_setopt($ch, CURLOPT_POST, 1);
           curl_setopt($ch, CURLOPT_POSTFIELDS, $params ."Email=$usuario&Passwd=$senha&PersistentCookie=");
           $html = curl_exec($ch);

           // verifica se logou
           if (!isset($cookiearr['GX']) && (!isset($cookiearr['LSID']) || $cookiearr['LSID'] == "EXPIRED")) {
               return true;
           }
       }

        ?>

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...