Ir para conteúdo

Arquivado

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

Alexandre Urze

problema com formulário e div

Recommended Posts

Citar

Criei um formulário em meu site porém com as tags div recebo os emails todos em branco. com as tags table ele chega normalmente, queria usar o formato com div pq o layout fica mais adequado pro meu site devido ao css. segue a baixo os dois códigos (com div q não funciona e com table que funciona perfeitamente)

Citar

<section><a name="participe"></a>

                                                                               <div class="container">

                                                                                              <div class="row">

                                                                                                              <div class="col-md-12">

                                                                                                                              <h2 class="fh5co-uppercase-heading-sm text-center">Seja um Tuber parceiro!</h2>

                                                                                                                              </div>

                                                                                                                              <div class="col-md-8 col-md-offset-2"><form method="post" action="http://canalstart.com.br/cgi-sys/formmail.pl">

                                                                                                                              <input type="hidden" name="recipient" value="alexandre@canalstart.com.br"/>

<input type="hidden" name="subject" value="Formulario FormMail"/>

                                                                                                                                              <input type="hidden" name="redirect" value="http://www.canalstart.com.br/"/>

                                                                                                                                              <div class="col-md-8">

                                                                                                                                                             <div class="form-group">

                                                                                                                                                                             <label for="email" class="sr-only">Email</label>

                                                                                                                                                                             <input placeholder="Email" id="email" type="text" class="form-control input-lg">

                                                                                                                                                             </div> 

                                                                                                                                              </div>

                                                                                                                                              <div class="col-md-8">

                                                                                                                                                             <div class="form-group">

                                                                                                                                                                             <label for="canal" class="sr-only">Canal do Youtube</label>

                                                                                                                                                                             <input placeholder="Canal" id="canal" type="text" class="form-control input-lg">

                                                                                                                                                             </div> 

                                                                                                                                              </div>

                                                                                                                                              <div class="col-md-12">

                                                                                                                                                             <div class="form-group" align="center">

                                                                                                                                                                             <input type="submit" class="btn btn-primary btn-lg " value="Enviar">

                                                                                                                                                             </div> 

                                                                                                                                              </div></form> </div>                                                                                                                 

                                                                                                                              <div class="fh5co-spacer fh5co-spacer-sm"></div>

                                                                                                              </div>

                                                                                              </div>

                                                               </section>

Citar

<section><a name="participe"></a>

                                                                               <div class="container">

                                                                                              <div class="row">

                                                                                                              <div class="col-md-12">

                                                                                                                              <h2 class="fh5co-uppercase-heading-sm text-center">Seja um Tuber parceiro!</h2>

                                                                                                                              </div>

                                                                                                                              <div class="col-md-8 col-md-offset-2">

                                                                                                              <form method="post" action="http://canalstart.com.br/cgi-sys/formmail.pl"/>

<input type="hidden" name="recipient" value="alexandre@canalstart.com.br"/>

<input type="hidden" name="subject" value="Formulario FormMail"/>

                                                                                                              <input type="hidden" name="redirect" value="http://www.canalstart.com.br/"/>

<table width="28%" border="0" align="center">

<tr>

<td height="19" width="25%">Nome: </td>

<td height="19" width="75%"><font color="

#000000"><input type="text" name="nome" size="40" value="Seu nome"></font></td>

</tr>

<tr>

<td height="19" width="25%">E-mail: </td>

<td height="19" width="75%"><font color="

                #000000"><input type="text" name="email" size="40" value="E-mail de contato"></font></td>

</tr>

<tr>

<td height="19" width="25%">Canal: </td>

<td height="19" width="75%"><font color="

                #000000"><input type="text" name="email" size="40" value="Link do seu canal"></font></td>

</tr>

<tr>

<td height="19" width="25%">Whatsapp: </td>

<td height="19" width="75%"><font color="

                #000000"><input type="text" name="email" size="40" value="Opcional"></font></td>

</tr>

<tr>

<td height="19" width="25%">  </td>

<td height="19" width="75%"><font color="

#000000">

<input type="submit" name="Submit" value="Enviar Dados"></font>

</td>

</tr>

</table>

</form>

</div>

</div>

</div>

    </section>

 se alguém puder me ajudar, agradeço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Seu novo formulário não está usando o atributo name  é com esse atributo que o valor do campo é enviado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Bergs inseri o atributo name mas mesmo assim sem sucesso ainda, pode dar uma luz? o código ficou assim:

 

<section><a name="participe"></a>
                    <div class="container">
                        <div class="row">
                            <div class="col-md-12">
                                <h2 class="fh5co-uppercase-heading-sm text-center">Seja um Tuber parceiro!</h2>
                                </div>
                                <div class="col-md-8 col-md-offset-2"><form method="post" action="http://canalstart.com.br/cgi-sys/formmail.pl"> 
                                <input type="hidden" name="recipient" value="alexandre@canalstart.com.br"/>
<input type="hidden" name="subject" value="Formulario FormMail"/>
                                    <input type="hidden" name="redirect" value="http://www.canalstart.com.br/"/>
                                    <div class="col-md-8">
                                        <div class="form-group">
                                            <label for="email" name="email" class="sr-only">Email</label>
                                            <input placeholder="Email" id="email" type="text" class="form-control input-lg">
                                        </div>    
                                    </div>
                                    <div class="col-md-8">
                                        <div class="form-group">
                                            <label for="canal" name="canal" class="sr-only">Canal do Youtube</label>
                                            <input placeholder="Canal" id="canal" type="text" class="form-control input-lg">
                                        </div>    
                                    </div>
                                    <div class="col-md-12">
                                        <div class="form-group" align="center">
                                            <input type="submit" class="btn btn-primary btn-lg " value="Enviar">
                                        </div>    
                                    </div></form> </div>                                 
                                <div class="fh5co-spacer fh5co-spacer-sm"></div>
                            </div>
                        </div>
                </section>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pelo o que eu entendi na hora de receber o email está desalinhado é isso?

 

Eu refiz seu código.

<section>
	<a name="participe"></a>
	<div class="container">
		<div class="row">
			<div class="col-md-12">
				<h2 class="fh5co-uppercase-heading-sm text-center">Seja um Tuber parceiro!</h2>
			</div>
			<form method="post" action="http://canalstart.com.br/cgi-sys/formmail.pl">
				<div class="col-md-12 col-md-offset-2">
					<input type="hidden" name="recipient" value="alexandre@canalstart.com.br"/>
					<input type="hidden" name="subject" value="Formulario FormMail"/>
					<input type="hidden" name="redirect" value="http://www.canalstart.com.br/"/>
					<div class="col-md-8">
						<div class="form-group">
						<label for="email" class="sr-only">Email</label>
						<input placeholder="Email" id="email" type="text" class="form-control input-lg">
					</div>
				</div>
				<div class="col-md-8">
					<div class="form-group">
					<label for="canal" class="sr-only">Canal do Youtube</label>
					<input placeholder="Canal" id="canal" type="text" class="form-control input-lg">
				</div>
		
				<div class="col-md-12">
					<div class="form-group" align="center">
						<input type="submit" class="btn btn-primary btn-lg " value="Enviar">
					</div>
				</div>
			</form>
		</div>
		<div class="fh5co-spacer fh5co-spacer-sm"></div>
	</div>
</section>

Agora ele está mais visível para compreensão da leitura

Compartilhar este post


Link para o post
Compartilhar em outros sites
48 minutos atrás, Alexandre Urze disse:

Ainda sem conseguir resolver =/ Alguém mais consegue ajudar?

 

Adiciona o name como atributo do input em vez de atributo de label.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Ao invés de fazer:
Citar

<label for="email" name="email" class="sr-only">Email</label>

<input placeholder="Email" id="email" type="text" class="form-control input-lg">

 

 

Você tem que fazer:

<label for="email" class="sr-only">Email</label>

<input placeholder="Email" name="email"  id="email" type="text" class="form-control input-lg">

 

Como o bergs falou, o name é que leva o valor do campo para a pagina que trata os dados. Nunca adicione um campo no seu formulário sem dar um name pra ele.

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por luiz monteiro
      Bom dia!
       
      A questão é a seguinte, tenho o seguinte form 
       
      <form onsubmit="return false;" action="./busca.php" method="post" name="buscar" id="buscar">
       
                 <input type="text" name="texto">
       
                <button>Executa</button>
       
      </form>
       
      Que está funcionando perfeitamente com a seguinte estrutura do script abaixo
       
        var form = document.getElementById('buscar');
       
        form.addEventListener('submit', function(e)
        {
            e.preventDefault();
       });
       
       
      O que preciso, é saber como submeter esse mesmo formulário ao clicar em button fora do form sem modificar esse script?
       
      <button id="fora_do_form">Submeter o form</button>
       
       
      Agradeço desde já!
       
       
    • Por GOD
      Quero pegar o dado:
      CHEGADA e SAÍDA do form 1 e colocar para ser exibido no campo;
      DATAS DA ESTADIA no form 2.
      e
      ADULTO E CRIANÇA também do form 1 para o form 2
      Como faço isso sem utilizar banco de dado. Se possível somente com html, css. E se não for possível pode entrar o Javascript ou como possível for. 
       
      Desde já agradeço. 
       
       
      Form 1
       
       
      <!DOCTYPE html> <html> <head> <!---------------------------------- FORMULARIO 1 ------------------------------------------------> <form class="reserva-form" action="" method="post"> <fieldset class="fiesdeset"> <div class="reserva-form-chegada"> <label class="reserva-form-chegada-label">Chegada ↴</label> <br /> <input type="date" /> </div> <div class="reserva-form-saida"> <label class="reserva-form-saida-label">Saida ↴</label> <br /> <input type="date" /> </div> <div class="reserva-form-adulto"> <label class="inicio" style="margin: 0">Adultos</label> <select name="ad" id="adultos"> <option value="1" selected="">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select> </div> <div class="reserva-form-crianca"> <label class="inicio" style="margin: 0">Crianças</label> <select name="ch" id="nCrianca"> <option value="0" selected="selected">0</option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> </select> </div> <div class="reserva-form-pesquisar"> <button type="submit" class="botao-pesquisar type=" submit" id="bt-pesquisa" data-enabled="enabled"> Pesquisar </button> </div> <div class="reserva-form-check-in"> <a href="form-cadastro.html" class="botao-checkin" target="_blank">Pré-checkin</a> </div> </fieldset> </form> </body> </html>  
       
      Form 2
       
       
      <!DOCTYPE html> <html> <head> <!------------------------------ FORMULARIO 2 ---------------------------------------------------> <form class="reserva-form" action="" method="post"> <fieldset class="fiesdeset"> <div class="reserva-form-estadia"> <label class="reserva-form-estadia-label">DATAS DA ESTADIA ↴</label> <br /> <input type="text" name="estadia" value="10/06/2022 - 10/07/2022" /> </div> <div class="reserva-form-quarto"> <label class="reserva-form-quarto-label">   QUARTOS E HÓSPEDES ↴</label> <br> <label class="inicio">  Nº de Quartos</label> <select name="ad" id="quarto"> <option value="1" selected="">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select> </div> <div class="reserva-form-adulto"> <label class="inicio">Adultos</label> <select name="ad" id="adultos"> <option value="1" selected="">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> <option value="6">6</option> <option value="7">7</option> <option value="8">8</option> <option value="9">9</option> <option value="10">10</option> </select> </div> <div class="reserva-form-crianca"> <label class="inicio" style="margin: 0">Crianças</label> <select name="ch" id="nCrianca"> <option value="0" selected="selected">0</option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> </select> </div> <div class="reserva-form-crianca"> <label class="inicio">&nbsp Nº de Crianças 0 aos 12 Anos</label> <select name="ch" id="nCrianca"> <option value="0" selected="selected">0</option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> <option value="6">6</option> <option value="7">7</option> <option value="8">8</option> <option value="9">9</option> <option value="10">10</option> </select> </div> <div class="reserva-form-pesquisar"> <button type="submit" class="botao-pesquisar type=" submit" id="bt-pesquisa" data-enabled="enabled"> Buscar </button> </div> </fieldset> </form> </body> </html>  
    • Por eduardodsilvaq
      Erro retornado no console do navegador: 400 bad request
      Rastreei o erro ate essa parte no arquivo admin-ajax.php mudando o valor de resposta de 0 para 1:
      if ( is_user_logged_in() ) { // If no action is registered, return a Bad Request response. if ( ! has_action( "wp_ajax_{$action}" ) ) { wp_die( '0', 400 ); } Tentei de tudo, mas infelizmente nao entendi oq realmente significa esse login e como ele funciona.
      Vi algumas pessoas tendo problema com o host, no meu caso estou usando hostinger. (Nao creio que isso e relevante mas ta ai.)
       
      Código utilizado:
       
      Javascript
      function formValidation() { event.preventDefault(); var name = document.forms["contactForm"]["name"].value; var email = document.forms["contactForm"]["email"].value; var subject = document.forms["contactForm"]["subject"].value; var message = document.forms["contactForm"]["message"].value; document.getElementById('status').innerHTML = ''; var errorMessage="<span class='error'>All fields are required.</span>"; var regEx = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/; if (name.trim() == "" ||email.trim() == "" || subject.trim() == "" || message.trim() == "") { document.getElementById('status').innerHTML = errorMessage; return false; } if (!regEx.test(email)) { var errorMessage="<span class='error'>Invalid email.</span>"; document.getElementById('status').innerHTML = errorMessage; return false; } processContactSubmit(); return true; } function processContactSubmit() { var request = new XMLHttpRequest(); request.open("POST", "/wp-admin/admin-ajax.php?action=process_contact_form"); request.onreadystatechange = function() { if(this.readyState === 4 && this.status === 200) { document.getElementById("status").innerHTML = this.responseText; } }; var myForm = document.getElementById("contactForm"); var formData = new FormData(contactForm); request.send(formData); } functions.php
      add_action('wp_ajax_nopriv_process_contact_form', 'process_contact_form'); add_action('wp_ajax_process_contact_form', 'process_contact_form'); //Retirar essa parte para error no console, no contrario ira aparecer no navegador o numero 0. function process_contact_form() { $to = "Recipient Email Address"; $subject = $_POST["subject"]; $headers = "Testing"; $message = $_POST["message"]; $attachments = ""; $sent = wp_mail($to, $subject, $message, $headers, $attachments); if (! $sent) { echo "<span class='error'>Problem in sending mail.</span>"; } else { echo "<span class='success'>Hi, thank you for the message.</span>"; } wp_die(); } Html
      <form name="contactForm" id="contactForm" method="post" onsubmit="return formValidation()" action=""> <p class="comment-form-comment"><textarea id="message" name="message" required="" placeholder="" aria-required="true"></textarea></p> <p class="comment-form-author"><label for="author">Nome: </label> <input id="name" name="name" required="" size="30" type="text" value=" " /></p> <p class="comment-form-author about"><label for="author">Assunto: </label> <input id="subject" name="subject" required="" size="40" type="text" value=" " /></p> <p class="comment-form-email"><label for="email">Email: </label> <input id="email" name="email" required="" size="30" type="text" value="" /></p> <p class="form-submit"><input id="submit" class="submit" name="email_contato" type="submit" value="Enviar" /></p> </form>&nbsp; <h3><div id="status"></div></h3>  
    • Por unset
      Olá, estou com uma falha de lógica pegando aqui se alguém puder ajudar
       
      Eu tenho um formulário tranquilo, como abaixo
      <label for="cidades" class="form-label">Cidades</label> <select class="form-select mb-3" name="cidades[]" id="cidades" multiple="multiple"> <option value="1">Cidade 1</option> <option value="2">Cidade 2</option> <option value="3">Cidade 3</option> <option value="4">Cidade 4</option> <option value="5">Cidade 5</option> </select>  
      Blz eu recebe os dados do formulário ou seja os ids da cidade certinho em um array 
       
      array(3) { [0]=> string(1) "2" [1]=> string(2) "3" [1]=> string(1) "5" }
      <?php $dados = filter_input_array(INPUT_POST, FILTER_SANITIZE_STRIPPED); var_dump($dados); ?> Agora como inserir todos os ids no banco? utilizando um for? um while? algum exemplo?
       
      Pergunto pq ao tentar inserir no banco somente um registro é inserido e não todos do select
       
    • Por mateus.andriollo
      Qual seria a forma correta de projetar uma aplicação multi formulários. Estou fazendo ela em Jquery com Load() mas algumas ações não são executadas em script.
      Me pergunto seria o correto?
       
      Exemplo: pensando um cadastro de clientes/empresas
      - clientes.php (formulário de cadastro/edição/anexos)
      - empresas.php (formulários de cadastro de empresa/ funcionários/ setores)
      - relatorios.php (clientes e empresas)
       
      Cada página dessa eu chamo, ela vem sempre com o seu conteúdo...
      Pensei no seguinte, todos estea formulários carregados e eu apenas usar função Get() para preencher campos e gerar os relatórios.
       
      Fica a dúvida, pois hj essas páginas extras são HTML com form e ações PHP
       
       
       
       
       
×

Informação importante

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