Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Caio Lyra

como salvo informações do meu form html?

Recommended Posts

oi 

eu criei um código html e não consigo salvar as info do form

eu uso wamppserver

já tentei php e nunca da certo

as vezes tento entender o javascript mas n consigo

quem poder me disponibilizar um código estou agradecido

aqui esta o meu código do form:

 

 

 

<html>
<head>

<title>Cadastro</title>
<h1>Cadastre-se</h1>
</head>

<body>
<form>
Nome:<input type="text" name="nome" size="50" value="">
<h1></h1>
E-Mail:<input type="text" name="email" size="50" value="">
<h1></h1>
Senha:<input type="password" name="senha" size="30
<h1></h1>
Confirmar Senha:<input type="password" name="cosenha" size="30">
<h1></h1>
Choose your Country:
      <select name="pais">
          <option>  </option>
          <option>BRA</option>
          <option>EUA</option>
          <option>ARG</option>
          <option>ESP</option>
          <option>FRA</option>
          <option>ING</option>
          <option>ITA</option>
          <option>URU</option>
          <option>ALE</option>
          <option>CAN</option>
          <option>MEX</option>
          <option>JAP</option>
          <option>CHI</option>
      </select>
      <h1></h1>
      Estado/Província:<input type="text" name="estado" size="70">
      <h1></h1>
      Cidade:<input type="text" name="cidade" size="50">
      <h1></h1>
     Escolha seu Sexo:
         <select name="sexo">
         <option></option>
         <option>MAN</option>
         <option>WOMAN</option>
         <option>NULL</option><><><><><><><
         <H1></H1>
         <input type="submit" name="botao-ok" value="Next" style='width: 120px'>

</form>

</body>
</html>

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

É melhor usar uma linguagem de programação mais adequada para formulários que é o PHP, não que não possa fazer isso em html, mas o php é mais indicado.

Vou tentar explicar como pode fazer, então mãos a obra:

Primeiro pode usar seu próprio form aí para exemplo. Só terá que modificar suas propriedades, vou falar sobre 2.

method: É o tipo de requisição para o servidor GET ou POST. É sempre melhor usar o POST para coisas importantes por segurança.

<form method="POST">

Uma vez escolhido o tipo de requisição temos que indicar para onde o formulário é redirecionado.

action : Com isso é que definimos para onde deve-se redirecionar esses dados, então para servir de exemplo vamos redirecionar para um arquivo post.php (crie esse arquivo aí). Assim sendo toda vez que submeter o formulário o navegador vai redirecionar e enviar os dados do formulário para o post.php

<form method="POST" action="post.php">

 

Bem isso já é o bastante para se criar form e validar-los, mas vamos compreender mais.

No arquivo post php entre com o seguinte código:

<?php
echo "<pre>";
var_dump($_POST);
echo "</pre>";

o var_dump vai depurar toda Array Global $_POST, mostrando tudo que o formulário enviou, para que um dado venha é necessário que o input do form tenha sempre a tag name exemplo: <input type="text" name="txt" />

Com isso a depuração vai achar um índice 'txt' na array, use isso para validar e projetar o form por exemplo vamos modificar o post.php:

<?php
if (count($_POST)) { // Isso irá fazer uma contagem nos índices da array
    if (empty($_POST['txt'])) { // Isso vai verificar o valor do input name="txt" está vazio
        echo ("Opa o input \"txt\" está vazio, digite alguma coisa nele");
    } else {
        echo "<pre>";
        var_dump($_POST);
        echo "</pre>";
    }
} else { // Se a array estiver vazia
    echo ("Esse é uma arquivo que recebe dados de um form, mas não tem nenhum dados para validar");
}

 

Por fim. Porque usar o php?.

Posso dizer inúmeras vantagens, mas somente vou me reter a 1, se usar outra linguagem ou usar html você vai ter que fazer os tratamentos de dados por javascript, e isso uma pessoa pode desabilitar ou burlar e destruir toda estrutura que criou em seu projeto. Como nos exemplos mostrados o uso do PHP que é processado dentro do servidor e não no computador de quem acessa o website.

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Omar,

Eu coloquei assim e não esta dando certo:

Código HTML:

<html>
<head>

<title>Cadastro</title>
<h1>Cadastre-se</h1>
</head>

<body>
<form method="POST" action="post.php">
Nome:<input type="text" name="nome" size="50" value="">
<h1></h1>
E-Mail:<input type="text" name="email" size="50" value="">
<h1></h1>
Senha:<input type="password" name="senha" size="30
<h1></h1>
Confirmar Senha:<input type="password" name="cosenha" size="30">
<h1></h1>
Choose your Country:
      <select name="pais">
          <option>  </option>
          <option>BRA</option>
          <option>EUA</option>
          <option>ARG</option>
          <option>ESP</option>
          <option>FRA</option>
          <option>ING</option>
          <option>ITA</option>
          <option>URU</option>
          <option>ALE</option>
          <option>CAN</option>
          <option>MEX</option>
          <option>JAP</option>
          <option>CHI</option>
      </select>
      <h1></h1>
      Estado/Província:<input type="text" name="estado" size="70">
      <h1></h1>
      Cidade:<input type="text" name="cidade" size="50">
      <h1></h1>
     Escolha seu Sexo:
         <select name="sexo">
         <option></option>
         <option>MAN</option>
         <option>WOMAN</option>
         <option>NULL</option><><><><><><><
         <H1></H1>
         <input type="submit" name="botao-ok" value="Next" style='width: 120px'>

</form>

</body>
</html>

Código PHP:

 

<?php
echo "<pre>";
var_dump($_POST);
echo "</pre>";
?>
<?php
if (count($_POST)) { // Isso irá fazer uma contagem nos índices da array
    if (empty($_POST['txt'])) { // Isso vai verificar o valor do input name="txt" está vazio
        echo ("Opa o input \"txt\" está vazio, digite alguma coisa nele");
    } else {
        echo "<pre>";
        var_dump($_POST);
        echo "</pre>";
    }
} else { // Se a array estiver vazia
    echo ("Esse é uma arquivo que recebe dados de um form, mas não tem nenhum dados para validar");
}
?>

 

ME AJUDAAAAAA!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pode tentar tambem dessa forma:

Neste exemplo ,mostro formulario rodando em Windows + Apache  com banco de dados CSV Comp DB (nosql).Não precisa de PHP e nem de Mysql neste exemplo


integracao do formulario fonte do exemplo no meu blog
 

<html>
<title>CQL WEB test</title>
<!--The action is called "default" in every application.GET Method only-->
<form action='http://server.com/cgi-bin/executa.exe/default'> 

<h1>Input data on form</h1>
Type your name:<br>
<input type='text' name='id_name'></a><p>

Type your phone:<br>
<input type='text' name='id_phone'></a>

<input type='submit' name='your_script.cql' value='Register'></a>
</form>
</html>



Salve o html form na pasta  htdocs como "home.html"


Na pasta ".../cgi-bin" ,salve o  script "your_script.cql"
 

{
      c:\servidor\apache2\htdocs\AGENDA;
      @adicionar;
      (id_name;id_phone);
      0;0;0;
      query=0;
      destino=0
}
{
      c:\servidor\apache2\htdocs\AGENDA;
      @html;
      1;
      3;red;(<link_of_css>);
      query=0;
      destino=0
  
}
{
      none;
      @resposta; 
       <script>window.location='http://server.com/AGENDA.html'</script>;
      0; 
      0; 
      0;   
      query=0; 
      destino=0
}

(script de nome "your_script.cql" acima)
(*A paggina web "agenda.html" é um espelho da tabela original "agenda.csv" .O servidor pode ser localhost)

 

   Crie uma tabela * .csv *  de nome AGENDA.csv no ... \ htdocs \ AGENDA.csv " com 2 campos na primeira linha:

NAME;PHONE

Compartilhar este post


Link para o post
Compartilhar em outros sites

Arquivo form.html

Spoiler

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>Form Exemplo</title>
    </head>
    <body>
        <form method="POST" action="post.php" target="_blank">
            <p><input type="text" name="input_name" maxlength="50" placeholder="Digite alguma coisa aqui" /></p>
            <p><input type="password" name="input_pass" maxlength="30" /></p>
            <button type="submit">Validar Form</button>
        </form>
    </body>
</html>

 

 

Arquivo post.php

Spoiler

<?php
header('Content-Type: text/html; charset=utf-8');
if (count($_POST)) {
    if (empty($_POST['input_name'])) {
        echo "Digite alguma coisa para o nome";
    } else if (empty($_POST['input_pass'])) {
        echo "Digite alguma coisa para a senha";
    } else {
        echo "Muito bem ambos os campos foram preenchidos"
        . "<p>Mas não acabou, ainda ha necessidades de aplicações de filtros e validações.</p>"
        . "<p>Esses filtros e validações são relativas as necessidades do projeto.</p>";
    }
} else {
    echo "Esse arquivo só pode ser acessado por envio de form";
}

 

 

Muito importante para quem quer começar, é sempre pensar na segurança!

NÃO USE NENHUM TIPO DE VALIDAÇÃO OU CHECAGEM EXTERNA A SUA APLICAÇÃO

 

Se quiser dar uma olhada aqui mostrei como validar formulários usando AJAX:

 

Mas sugiro que pesquise a respeito da jQuery que é mais indicado para quem não sabe programar em javascript.

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por juliosonic
      Boa noite..
      Estou desenvolvendo um site de https://www.maithunatantra.com.br/ e estou com um duvida sobre o menu de navegação da versão mobile.
      O menu que tem o dropdown "Terapeutas" e "Terapias" quando clico em cima ele expande como deve ser, mas quando clico denovo para recolher os submenus
      nao acontece nada.. segue o trecho do codigo do menu..
      <div class="collapse navbar-collapse" id="navbarsExample09">             <ul class="navbar-nav ml-auto">               <li class="nav-item  active"><a class="nav-link" href="index.html">Home</a></li>               <li class="nav-item  active"><a class="nav-link" href="about-us.html">Quem Somos</a></li>               <li class="nav-item dropdown1">                     <a class="nav-link dropdown-toggle" data-toggle="dropdown1" href="#">Terapeutas</a>                     <ul class="dropdown-menu">                         <li><a class="dropdown-item" href="terapeuta-julio-cezar.html">Julio Cezar</a></li>                         <li><a class="dropdown-item" href="terapeuta-pamela-priscila.html">Pamela Priscila</a></li>                     </ul>                                    </li>               <li class="nav-item dropdown">                     <a class="nav-link dropdown-toggle" data-toggle="dropdown1" href="#">Terapias</a>                     <ul class="dropdown-menu" aria-labelledby="dropdown01">                         <li><a class="dropdown-item" href="o-que-e-reiki.html">O que é Reiki</a></li>                         <li><a class="dropdown-item" href="beneficios-reiki.html">Benefícios do Reiki</a></li>                         <li><a class="dropdown-item" href="principios-reiki.html">Princípios do Reiki</a></li>                         <li><a class="dropdown-item" href="animais-reiki.html">Reiki em Animais</a></li>                         <li><a class="dropdown-item" href="animais-reiki.html">Estudos Sobre Reiki</a></li>                         <li><a class="dropdown-item" href="terapia-massagem-tantrica.html">Terapia Tântrica</a></li>                     </ul>               </li>               <li class="nav-item  active"><a class="nav-link" href="blog.html">Blog</a></li>                <li class="nav-item"><a class="nav-link" href="contato.html">Contato</a></li>             </ul>         </div>  
      Massagem Tantrica em Curitiba
      Tantra Curitiba
      Massagem Tântrica
      Tantra
      Julio Darshan

      Obrigado
      Att
      Julio Cezar
       
       
       
    • Por joeythai
      Boa tarde pessoal,
       
      Eu criei um formulário em que tenho 3 interações: evento click, change e uma chamada ajax. No evento on change ("select#removal_table_from" )eu faço uma chamada ajax onde eu passo como parametro o id do item selecionado e construo uma tabela dinamica com o próprio javascript, após isto, tenho um input em que o usuario coloca um valor de percentual para que eu possa preencher em 3 colunas da tabela que foi criada dinamicamente: moto_atualizado, carro_atualizado e caminhao_atualizado, até aí tudo bem, o codigo está fazendo isso, porém, como a tabela é criada dinamicamente eu preciso de alguma forma enviar o arrayData para meu backend mas quando faço o calculo dentro do loop apos resposta do meu ajax, os valores desses 3 campos chegam como null, não sei se é possível fazer o que pretendo ou se é ainda não sei como faz
       
      <code>
           $(document).ready(function (event) {   let arrayData = []; let percentage; let removal_vehicle; let removal_motorcycle; let removal_tuck; let apply_removal = $('#apply_removal');   // apply_removal.on('click', function () { // percentage = $('#percentage').val();   // $('.table-body tr').each(function () {   // let veiculo = $(this).find('.veiculo').text(); // let moto = $(this).find('.moto').text(); // let caminhao = $(this).find('.caminhao').text();   // let removal_vehicle = parseFloat(veiculo) + (parseFloat(veiculo) * parseFloat(percentage)) / 100; // let removal_motorcycle = parseFloat(moto) + (parseFloat(moto) * parseFloat(percentage)) / 100; // let removal_tuck = parseFloat(caminhao) + (parseFloat(caminhao) * parseFloat(percentage)) / 100;   // arrayData.push({ // removal_vehicle, // removal_motorcycle, // removal_tuck // })   // $(this).find('.veiculo_atualizado').val(removal_vehicle.toFixed(2)); // $(this).find('.moto_atualizado').val(removal_motorcycle.toFixed(2)); // $(this).find('.caminhao_atualizado').val(removal_tuck.toFixed(2)); // }); // });   apply_removal.on('click', function () { percentage = $('#percentage').val();   $('.table-body tr').each(function () {   let veiculo = $(this).find('.veiculo').text(); let moto = $(this).find('.moto').text(); let caminhao = $(this).find('.caminhao').text();   removal_vehicle = parseFloat(veiculo) + (parseFloat(veiculo) * parseFloat(percentage)) / 100; removal_motorcycle = parseFloat(moto) + (parseFloat(moto) * parseFloat(percentage)) / 100; removal_tuck = parseFloat(caminhao) + (parseFloat(caminhao) * parseFloat(percentage)) / 100;   arrayData.push({ removal_vehicle, removal_motorcycle, removal_tuck })   $(this).find('.veiculo_atualizado').val(removal_vehicle.toFixed(2)); $(this).find('.moto_atualizado').val(removal_motorcycle.toFixed(2)); $(this).find('.caminhao_atualizado').val(removal_tuck.toFixed(2));     console.log('Removal Vehicle:', removal_vehicle); console.log('Removal Motorcycle:', removal_motorcycle); console.log('Removal Truck:', removal_tuck); }); });   $('select#removal_table_from').on('change', function (e) { let table_id = $(this).val(); let action = route('removal.removal-values.show', table_id);   $.ajax({ type: "GET", url: action, headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') },   success: function (data) { $('.table-body').empty();   for (let i = 0; i < data.length; i++) { let carro = parseFloat(data[i].CARRO); let moto = parseFloat(data[i].MOTO); let caminhao = parseFloat(data[i].CAMINHAO); let distancia = data[i].DISTANCIA; let origem = data[i].ORIGEM; let destino = data[i].DESTINO; let localidadeOrigem = data[i].LocalidadeOrigem_ID; let localidadeDestino = data[i].LocalidadeDestino_ID;   let newRow = '<tr class="removal-row">' + '<td class="align-middle">' + '<div class="row">' + '<div class="col-1">' + '<span class="font-weight-bold">Origem</span><br>' + '<span class="origem">' + origem + '</span>' + '</div>' + '<div class="col-1">' + '<span class="font-weight-bold">Destino</span><br>' + '<span class="destino">' + destino + '</span>' + '</div>' + '<div class="col-1">' + '<span class="font-weight-bold">KM</span><br>' + '<span class="km">' + distancia + '</span>' + '</div>' + '<div class="col-1">' + '<span class="font-weight-bold">Veículo</span><br>' + '<span class="veiculo">' + carro + '</span>' + '</div>' + '<div class="col-2">' + '<span class="font-weight-bold">Veículo Atualizado</span><br>' + '<input type="text" class="veiculo_atualizado">' + '</div>' + '<div class="col-1">' + '<span class="font-weight-bold">Moto</span><br>' + '<span class="moto">' + moto + '</span>' + '</div>' + '<div class="col-2">' + '<span class="font-weight-bold">Moto Atualizado</span><br>' + '<input type="text" class="moto_atualizado">' + '</div>' + '<div class="col-1">' + '<span class="font-weight-bold">Caminhão</span><br>' + '<span class="caminhao">' + caminhao + '</span>' + '</div>' + '<div class="col-2">' + '<span class="font-weight-bold">Caminhão Atualizado</span><br>' + '<input type="text" class="caminhao_atualizado">' + '</div>' + '</div>' + '</div>' + '</td>' + '</tr>';   $('.table-body').append(newRow); //let row = $('.removal-row:last');   // Calcula o valor atualizado e define nos campos diretamente // let veiculo_atualizado = carro + (carro * percentage) / 100; // let moto_atualizado = moto + (moto * percentage) / 100; // let caminhao_atualizado = caminhao + (caminhao * percentage) / 100; // console.log('PORCENTS: ', percentage); //console.log('Veiculo Atualizado:', veiculo_atualizado, 'Moto Atualizado:', moto_atualizado, 'Caminhao Atualizado:', caminhao_atualizado);   // Define os valores diretamente nos campos da nova linha // row.find('.veiculo_atualizado').val(veiculo_atualizado.toFixed(2)); // row.find('.moto_atualizado').val(moto_atualizado.toFixed(2)); // row.find('.caminhao_atualizado').val(caminhao_atualizado.toFixed(2));   arrayData.push({ carro, moto, caminhao, distancia, origem, destino, localidadeOrigem, localidadeDestino, removal_vehicle, removal_motorcycle, removal_tuck }); }   $('#copy_data_table').val(JSON.stringify(arrayData)); }   }); });   //javascript para o formulario de cadastro // $(document).ready(function (event) { $('#uf').change(function () { let code_city = $(this).val(); let deposit = localStorage.getItem('selected_deposit_id'); let action = route('removal.removal-values.cities', code_city); $.ajax({ type: "POST", url: action, headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') }, data: { code_city: code_city },   success: function (data) {   $('#city').empty(); $('#deposit').empty();   for (let i = 0; i < data.cities.length; i++) { $('#city').append('<option value="' + data.cities[i].NM + '">' + data.cities[i].NM + '<option>'); }   if (data.deposits.length > 0) { for (let i = 0; i < data.deposits.length; i++) { $('#deposit').append('<option value="' + data.deposits[i].NM + '">' + data.deposits[i].NM + '<option>'); } } else { // $('#deposit').prop('disabled', true); // $('#city').prop('disabled', false); }   $('#city').trigger('change'); } });   });   $('#deposit').on('change', function () { depositId = $(this).val(); localStorage.setItem('selected_deposit_id', depositId); });   $('#uf_destiny').change(function () { let code_city = $(this).val(); let depositDestiny = localStorage.getItem('selected_deposit_destiny_id'); let action = route('removal.removal-values.cities', code_city); $.ajax({ type: "POST", url: action, headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') }, data: { code_city: code_city },   success: function (data) {   $('#city_destiny').empty(); $('#deposit_destiny').empty();   for (let i = 0; i < data.cities.length; i++) { $('#city_destiny').append('<option value="' + data.cities[i].NM + '">' + data.cities[i].NM + '</option>'); }   if (data.deposits.length > 0) { // $('#deposit_destiny').prop('disabled', false); //$('#city_destiny').empty(); // $('#city_destiny').prop('disabled', true); for (let i = 0; i < data.deposits.length; i++) { $('#deposit_destiny').append('<option value="' + data.deposits[i].NM + '">' + data.deposits[i].NM + '</option>'); } } else { // $('#deposit_destiny').prop('disabled', true); // $('#city_destiny').prop('disabled', false); }   $('#city_destiny').trigger('change'); } }); });   $('#deposit_destiny').on('change', function () { let depositDestinyId = $(this).val(); localStorage.setItem('selected_deposit_destiny_id', depositDestinyId); });   }); </code>
    • Por babylon
      Olá galera tudo bem?
      Deixa eu perguntar, estava mexendo no meu site e queria adicionar em html essa tabela porem esta dando erro pois fica assim:
       

      Porem gostaria que ficasse assim:

      Segue o código da tabela:
      <center><table border="0">
          <tr>
      <td bgcolor="#0092df" width="24%"><a href="/categorias?ename=smartphones"><span style="font-size: 20px; color: #ffffff;"><b> <font color="#0092df">..</font>Bicicleta<br> <font color="#0092df">..</font>Track Bikes<br> <font color="#0092df">..</font>Aro 29 TKS</b></a></span><br><br><font size="5"><center><span style="background-color: #A1CD44">DE:</span></font> <br><font size="5"><s>R$ 1.999,99</center></font></s> </td><td><p><a href="/categorias?ename=smartphones"><img src="/static/img/itembicicleta.jpg"><br><font size="5"><center><span style="background-color: #A1CD44">COM - 60%:</span></font> <br><font size="5">1.199,99</font></center></a></td>
             <td><font color="#ffffff">....</font></td>
              <td bgcolor="#0092df" width="24%"><a href="/categorias?ename=smartphones"><span style="font-size: 20px; color: #ffffff;"><b> <font color="#0092df">..</font>Monitor 24"<br> <font color="#0092df">..</font>Samsung<font color="#0092df">aa.aa</font><br> <font color="#0092df">..</font>1ms 144hz</b></a></span></center></td><td><p><a href="/categorias?ename=smartphones"><img src="/static/img/itemmonitor.jpg"></a></td>
          </tr>
          </table></center>
      O que estaria errado, pois não sei como colocar nessa tabela outro fundo de outra cor, veja que usei td bgcolor="#0092df" para o azul escuro mas não sei como usaria pro "#e4f1fb" para o fundo ficar de azul claro em baixo bem como não ficou correto em altura o "DE:" com o "COM - 60%:".
      Bom é isso, obg.


    • Por Alessandro Bodão
      Fala galerinha, 
       
      Tenho um container com um título (h1) no cabeçalho do meu site, esse container ocupa metade da tela (50vw), e eu gostaria que esse título ocupasse toda a largura desse container, independente do seu tamanho ou do tamanho do monitor, de forma com que a palavra tenha exactamente o mesmo tamanho do container (vou anexar uma foto de exemplo). Já tentei todos os valores pra essa h1, como % e vw... mas nada parece fazer sentido.
       
       

    • Por viniciusfroner
      Tenho um pequeno sistema de envio, estou utilizando o "PHPMailerAutoload". Após o usuário inserir as informações e clicar em enviar a mensagem é enviada com sucesso, o único problema é que apresentado ao usuário a seguinte mensagem:
      if ($enviado){ echo "E-mail enviado com sucesso!"; } else { echo "Não foi possível enviar o e-mail."; echo "<b>Informações do erro:</b> " . $msg->ErrorInfo; } Acabei procurando e não achei como posso remover a mensagem "Error:"
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.