Jump to content
BTK

Criação de cadastro via curl

Recommended Posts

Boa noite, estou tentando criar um curl que faz cadastro no site(o proprietário está ciente disso) porem ele está me retornando (HTTP/1.1 100 Continue HTTP/1.1 302 Moved Temporarily)


 $ch = curl_init();   
    
                                                                                                               
    curl_setopt($ch, CURLOPT_URL, "https://www.cafefacil.com.br/customer/account/create/");                                     
    curl_setopt($ch, CURLOPT_HEADER, true);                                                                                                   
    curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36');                                                                                                                                               
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);                                                                                         
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);                                                                                       
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);                                                                                       
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);  
    curl_setopt($ch, CURLOPT_COOKIESESSION, true);                                                                             
    curl_setopt($ch, CURLOPT_COOKIEJAR, getcwd().'/cafefacil.txt');
    curl_setopt($ch, CURLOPT_COOKIEFILE, getcwd().'/cafefacil.txt'); 
    
    
    
    
    $b1 = curl_exec($ch);
    
    $form_key = value($b1, 'type="hidden" name="form_key" value="', '"');
    
    curl_setopt($ch, CURLOPT_URL, 'https://www.cafefacil.com.br/customer/account/createpost/');                                     
    curl_setopt($ch, CURLOPT_HEADER, true);                                                                                                   
    curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36');                                                                                                                                                  
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);                                                                                         
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);                                                                                    
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);                                                                                       
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
    curl_setopt($ch, CURLOPT_COOKIESESSION, true);   
    curl_setopt($ch, CURLOPT_REFERER, 'https://www.cafefacil.com.br/customer/account/create/');                                                                           
    curl_setopt($ch, CURLOPT_COOKIEJAR, getcwd().'/cafefacil.txt');
    curl_setopt($ch, CURLOPT_COOKIEFILE, getcwd().'/cafefacil.txt'); 
    curl_setopt($ch, CURLOPT_POST, 1);                                                                                                    
    $boundary = '---------------------------WebKitFormBoundaryRQ3KHJbpfmPf11v6';
    
    $data = '-----------------------------'.$boundary.'
    Content-Disposition: form-data; name="success_url"
    
    
    -----------------------------'.$boundary.'
    Content-Disposition: form-data; name="error_url"
    
    
    -----------------------------'.$boundary.'
    Content-Disposition: form-data; name="form_key"
    
    '.$form_key.'
    -----------------------------'.$boundary.'
    Content-Disposition: form-data; name="tipopessoa"
    
    15
    -----------------------------'.$boundary.'
    Content-Disposition: form-data; name="firstname"
    
    NomeTest SobreNomeTest
    -----------------------------'.$boundary.'
    Content-Disposition: form-data; name="nomefantasia"
    
    
    -----------------------------'.$boundary.'
    Content-Disposition: form-data; name="inscricaoestadual"
    
    
    -----------------------------'.$boundary.'
    Content-Disposition: form-data; name="email"
    
    nometestsobrenometest@gmail.com
    -----------------------------'.$boundary.'
    Content-Disposition: form-data; name="day"
    
    01
    -----------------------------'.$boundary.'
    Content-Disposition: form-data; name="month"
    
    01
    -----------------------------'.$boundary.'
    Content-Disposition: form-data; name="year"
    
    1990
    -----------------------------'.$boundary.'
    Content-Disposition: form-data; name="dob"
    
    01/01/1990
    -----------------------------'.$boundary.'
    Content-Disposition: form-data; name="taxvat"
    
    199.758.750-50
    -----------------------------'.$boundary.'
    Content-Disposition: form-data; name="celular"
    
    (11)4712-8491
    -----------------------------'.$boundary.'
    Content-Disposition: form-data; name="password"
    
    senhatest
    -----------------------------'.$boundary.'
    Content-Disposition: form-data; name="confirmation"
    
    senhatest
    -----------------------------'.$boundary.'
    Content-Disposition: form-data; name="persistent_remember_me"
    
    on
    -----------------------------'.$boundary.'--';
    
    $header[] = "Content-Type: multipart/form-data; boundary=".$boundary;
    curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data); 
    
      
    echo $exec = curl_exec($ch);
    curl_close($ch);

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Julie_santiago
      Olá!
      Pessoal, preciso muito de um help urgente. Estou tentando fazer uma simples query ao banco de dados, usando o Axios. Mas, não importa a forma de fazer a requisição, o Axios não funciona. O HTML está abaixo, onde chamo a função enviaDados() através do onsubmit.
      <div class="input-group md-form"> <form method="get" onsubmit="enviaDados()" name="buscar"> <input type="text" id="Form-search2" class="form-control" name="nomeReagente"> <label for="Form-search2">Search</label> <input type="submit" name="pesquisar" value="buscar"> </form> <span class="input-group-text dark lighten-2" id="basic-text1"> <i class="fas fa-search text-dark" aria-hidden="true"></i> </span> </div> Meu arquivo main.js que contém a função enviaDados().
      function enviaDados(){ let nome = buscar.nomeReagente.value recebeDados(nome); } Dentro dessa função, estou chamando outra: recebeDados() que executa a requisição Axios. Passo como parâmetro o valor lá do meu input. OBS.: Meu código está assim, aparentemente confuso, porque o objetivo é ter funções que enviam os dados dos meus formulários e outras funções (genéricas) para receber e tratar esses dados. Abaixo a função recebeDados():
      function recebeDados(nome_reagente){ axios.get('http://localhost/Quimica/php/recebe_json.php', { params: { nome } }) .then(function (response) { console.log(response); }) .catch(function (error) { console.log('Não foi possível realizar a requsição: '+error); }) .finally(function () { }); } Não importa o que eu faça, sempre cai no CATCH  - request aborted. Preciso muito resolver esse problema, mas não faço ideia do que pode ser. Relevem qualquer "noobice" porque estou aprendendo o básico ainda.
       
    • By JeanTDZ
      Olá pessoal!
       
      Estou com uma tremenda dificuldade.
      Tenho um formulário na qual está funcionando e cadastrando, porém preciso que o meu botão adicionar autorizado funcione e mostre o que foi digitado para o e-mail. As informações na vdd é enviada para o e-mail e o que será enviado é oque será digitado.
       
      Simplificando ->
      Tenho um botão que adiciona 2 inputs (NOME E SALDO) e conforme for clicando nesse botão, vai adicionando mais campos.
      Dúvida: Como posso fazer com que grave o que foi digitado nesses campos?
       
      Segue o que eu tentei fazer até agora:

      HTML
      <!DOCTYPE html> <html>     <head>         <title>Chame Taxi PrePago</title>                 <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>         <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" />         <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>         <link rel="icon" type="image/x-icon" href="https://www.flaticon.com/premium-icon/icons/svg/1361/1361253.svg" />         <script src="https://code.jquery.com/jquery-3.2.1.slim.min.js"></script>     <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.mask/1.14.15/jquery.mask.min.js"></script>     <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"></script>     <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"></script>     </head>     <body>         <br />         <div class="container" style="width:100%; max-width:600px">             <h2 align="center">Pré-Pago</h2>             <br />             <div class="panel panel-default">                 <div class="panel-heading"><h4>Registrar</h4></div>                 <div class="panel-body">                     <form method="post" id="register_form">                         <?php echo $message; ?>                         <div class="form-group">                             <label>Nome Completo</label>                             <input type="text" name="user_name" style="text-transform:uppercase" class="form-control" pattern="[a-zA-Z ]+" required />                         </div>                         <div class="form-group">                             <label>E-mail</label>                             <input type="email" name="user_email"  style="text-transform:uppercase" class="form-control" required />                         </div>                         <div class="form-group">                             <label>CEP</label>                             <input type="text" name="campob" id="cep" value="" maxlength="9" onblur="pesquisacep(this.value);" class="form-control">                         </div>                         <div class="form-group"> <table id="myTable" class="table"> <a class="btn btn-primary" onclick="myFunction()" href="#" role="button">Adicionar Autorizado</a>             <thead>                 <tr>                     <th>NOME</th>                     <th>SALDO</th>                 </tr>             </thead>         </table>                         <div class="form-group">                             <input type="submit" name="register" id="register" value="Validar" class="btn btn-info" />                         </div>                     </form>                 </div>             </div>         </div>     </body> </html> JAVASCRIPT 
       
          <script>         var incremento = -1;         function myFunction() {             incremento++;             var table = document.getElementById("myTable");             var row = table.insertRow(0);             var cell1 = row.insertCell(0);             var cell2 = row.insertCell(1);             var cell3 = row.insertCell(2);             var cell4 = row.insertCell(3);             cell1.innerHTML = "NOME";             cell2.innerHTML = '<input type="text" name="name1[${incremento}]" >';             cell3.innerHTML = "SALDO";             cell4.innerHTML = '<input type="text" name="saldo[${incremento}]" size="15px" >';         }     </script>  
    • By gramosiri2
      Oi estou tentando passar um valor através de uma variável em uma query, porém não está mostrando o resultado que eu quero.
       
      Aqui eu pego o ultimo id do pedido
      <?php while($row = $consulta_pedido2->fetch_assoc()){ echo $row['id_pedido']; }?> E aqui eu faço a query e passo variável...
      $query ="SELECT itempedido.id_itempedido, itempedido.valor, ... FROM itempedido INNER JOIN produto ON ... WHERE itempedido.pedido_id = '$row'"; No caso onde está a variável $row, se eu colocar o numero do pedido manualmente, me retorno os itens daquele pedido, agora com a variável não está mostrando, alguma ideia?
    • By gustavodubarbosa
      Estou criando uma página que realize monitoramento de atividades.
      No meu código PHP defini uma variável que busca a data atual, depois passei o parâmetro de conexão com o banco de dados, depois criei um while para buscar as informações, dentro do while criei um if, a condição if é que se a variável data for igual a data cadastrada na atividade, exiba toda a atividade cadastrada. Mas o problema é que o if não está controlando essa condição, está passando direto e exibindo tudo.
      <?php $number = ('23'); $data = date("Y-m-d"); echo "$data"; /*Aqui realizo a conexão com o banco de dados, passo os dados para conectar, caso dê algum erro, o sistema me retorna uma mensagem de erro*/ $conect = mysqli_connect('localhost','root','','projeto_pessoal') or die ('Erro na conexão com o banco de dados'); /*Aqui passo o comando para realizar a busca no banco de dados, aplicando o filtro de pesquisa*/ $result_pesquisa = "SELECT * FROM cadastrar_atividade"; /*Neste momento, mando a execução, preciso passar como parametro a variável com a conexão e a variável com o comando, caso dê erro, será exibido uma mensagem*/ $resultado_pesquisa = mysqli_query($conect, $result_pesquisa); /*Aqui é aberto um laço de repetição para fazer uma varredura no banco de dados, em seguida realizo a exibição do que foi encontrado*/ ?> <h1>Resultado da Pesquisa</h1> <?php while($rows_pesquisa = mysqli_fetch_array($resultado_pesquisa)){ if($rows_pesquisa['prazo'] == $data) echo '<p class="title">'.'ID da atividade: '.'</p>'.'<p class="result">'.$rows_pesquisa['id'].'<br>'.'</p>'; echo '<p class="title">'.'Nome da atividade: '.'</p>'.'<p class="result">'.$rows_pesquisa['nome_atividade'].'<br>'.'</p>'; echo '<p class="title">'.'Descrição da atividade: '.'</p>'.'<p class="result">'.$rows_pesquisa['desc_atividade'].'<br>'.'</p>'; echo '<p class="title">'.'Prioridade: '.'</p>'.'<p class="result">'.$rows_pesquisa['prioridade'].'<br>'.'</p>'; echo '<p class="title">'.'Prazo: '.'</p>'.'<p class="result">'.$rows_pesquisa['prazo'].'<br>'.'</p>'; echo 'carregado'; echo '<hr></hr>'; } ?>  
    • By violin101
      Caros amigos, saudações...
       
      Por favor me perdoa por recorrer ao auxílio dos amigos, mas estou com uma pequena dúvida.
       
      Preciso passar uma Variável [_caminho de Imagem_] para a Modal mas infelizmente não estou conseguindo.
       
      Consigo passar as variáveis do ID e DESCRIÇÃO, mas não consigo passar a variável da IMAGEM.
      <?php <a href="#modalImagem" role="button" data-toggle="modal" class="btn btn-warning" codg="'.$r->idcodigo.'" descr="'.$r->descprd.'" image="'.$r->imgprd.'" style="margin-right: 1%">Ver </a> ?>  
      Como consigo passar essa variável para poder visualizar ?
       
      Grato,
       
      Cesar
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.