部分表单不提交

编程入门 行业动态 更新时间:2024-10-27 04:26:49
本文介绍了部分表单不提交的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我正在处理一个小型项目时遇到问题。

我有一个带有9个字段的HTML表单。如果我点击提交,它会发送一封包含所有表单数据的电子邮件。表格的一部分仅在选择相应的单选按钮时才显示。尽管这个工作很完美(为此使用了JQuery),但子表单中的输入字段不会被提交。其他输入字段工作得很好。这是我的代码:

HTML:

<表单名称=contactFormid =contactFormmethod =postaction => < fieldset> < div class =group> < input name =groupNametype =textid =groupNameplaceholder =Groepsnaamvalue = minLength =2 required /> < / div> < div> < input name =contactNametype =textid =contactNameplaceholder =Naam contactpersoon value =minLength =2 required /> < / div> < div> < input name =contactEmailtype =emailid =contactEmailplaceholder =Email contactpersoon value = required /> < / div> < div> < input name =contactPhonetype =telid =contactPhone placeholder =Telefoonnummer contactpersoonvalue = required /> < / div> < div> < select name =amountMembersid =amountMembersrequired> < option value =selected> Aantal groepsleden< / 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> < / select> < / div> < div> < textarea name =groupMembersid =groupMembersplaceholder =Groepsledenrows =10cols =50 required>< / textarea> < / div> < div> <! - 如果第一个rdb是select,则显示字段。其他人隐藏。 - > < input type =radioonclick =displayForm(this)name =foodvalue =1> Ik wil me inschrijven voor het pasta-buffet< br> < input type =radioonclick =displayForm(this)name =foodvalue =2> Ik neem niet deel aan het 面食 - 自助餐< br> < / div> < div id =foodformstyle =display:none;> < input name =volwassenenPortiestype =textid =volwassenplaceholder =Aantal volwassenen value = required /> < input name =kinderPortiestype =textid =kindplaceholder =Aantal kinderen(-12j)value = required / > < br> < / div> < div> < button class =submitform>提交< / button> < div id =submit-loader> < div class =text-loader>正在发送...< / div> < div class =s-loader> < div class =bounce1>< / div> < div class =bounce2>< / div> < div class =bounce3>< / div> < / div> < / div> < / div> < / fieldset> < / form> <! - 表格结束 - >

JQuery:

function displayForm(c){ if(c.value ==1){ jQuery('#foodform')。fadeIn(); } if(c.value ==2){ jQuery('#foodform')。fadeOut(); } };

PHP:

<?php $ siteOwnersEmail ='Myemail@website.be'; $ b $ if($ _ POST){ $ groupName = trim(stripslashes($ _ POST ['groupName'])); $ contactName = trim(stripslashes($ _ POST ['contactName'])); $ email = trim(stripslashes($ _ POST ['contactEmail'])); $ phone = trim(stripslashes($ _ POST ['contactPhone'])); $ amountMembers = trim(stripslashes($ _ POST ['amountMembers'])); $ groupMembers = trim(stripslashes($ _ POST ['groupMembers'])); $ food = trim(stripslashes($ _ POST ['food'])); $ volwassenen = trim(stripslashes($ _ POST ['volwassen'])); $ kinderen = trim(stripslashes($ _ POST ['kind'])); //设置消息 $ message。=Groepsnaam:。 $ groupName。 < br />; $ message。=Naam contactpersoon:。 $ contactName。 < br />; $ message。=email:。 $电子邮件。 < br />; $ message。=telefoonnr:。 $手机。 < br />; $ message。=Aantal groepsleden:。 $ amountMembers。 < br />; $ message。=Namen groepsleden:。 $ groupMembers。 < br />; $ message。=Eten 1 = ja,2 = nee:。 $食物。 < br />; $ message。=Volwassenen porties:。 $ volwassenen。 < br />; $ message。=亲爱的港口:。 $ kinderen。 < br />; $ message。=< br /> -----< br />德泽电子邮件通过het inschrijvingsformulier来发送邮件。< br />; // Set From:header $ from = $ contactName。 < 。 $电子邮件。 > 中; //电子邮件标题 $标题=From:。 $从。 \r\\\; $ headers。=回复:。 $电子邮件。 \r\\\; $ headers。=MIME-Version:1.0 \r\\\; $ headers。=Content-Type:text / html; charset = ISO-8859-1 \r\\\; $ b $ if(!$ error){ ini_set(sendmail_from,$ siteOwnersEmail); //用于Windows服务器 $ mail = mail($ siteOwnersEmail,$ subject,$ message,$ headers); if($ mail){echoOK; } else {echo出错了,请重试。; } $ b $#}如果 - 没有验证错误 else { //验证错误}

有谁知道为什么foodform中的输入字段不提交?我一直在努力这一段时间。

预先感谢

Simon

解决方案

在您的PHP代码中尝试替换:

$ volwassenen = trim(stripslashes($ _ POST [ 'volwassen'])); $ kinderen = trim(stripslashes($ _ POST ['kind']));

用这个:

$ volwassenen = trim(stripslashes($ _ POST ['volwassenPorties'])); $ kinderen = trim(stripslashes($ _ POST ['kindPorties']));

I have a problem with a small project I'm working on.

I have a form in HTML with 9 fields. If I hit submit it sends an email with all the form data. A part of the form is only shown when the corresponding radiobutton is selected. Although this works perfect (used JQuery for this), the input fields in that 'subform' don't get submitted. The other input fields work just fine. This is my code:

HTML:

<form name="contactForm" id="contactForm" method="post" action=""> <fieldset> <div class="group"> <input name="groupName" type="text" id="groupName" placeholder="Groepsnaam" value="" minLength="2" required/> </div> <div> <input name="contactName" type="text" id="contactName" placeholder="Naam contactpersoon" value="" minLength="2" required/> </div> <div> <input name="contactEmail" type="email" id="contactEmail" placeholder="Email contactpersoon" value="" required/> </div> <div> <input name="contactPhone" type="tel" id="contactPhone" placeholder="Telefoonnummer contactpersoon" value="" required/> </div> <div> <select name="amountMembers" id="amountMembers " required> <option value="" selected>Aantal groepsleden</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> </select> </div> <div> <textarea name="groupMembers" id="groupMembers" placeholder="Groepsleden" rows="10" cols="50" required></textarea> </div> <div> <!-- If the first rdb is select, show fields. Else hide. --> <input type="radio" onclick="displayForm(this)" name="food" value="1"> Ik wil me inschrijven voor het pasta-buffet<br> <input type="radio" onclick="displayForm(this)" name="food" value="2"> Ik neem niet deel aan het pasta-buffet<br> </div> <div id="foodform" style="display:none;"> <input name="volwassenenPorties" type="text" id="volwassen" placeholder="Aantal volwassenen" value="" required/> <input name="kinderPorties" type="text" id="kind" placeholder="Aantal kinderen (-12j) " value="" required/> <br> </div> <div> <button class="submitform">Submit</button> <div id="submit-loader"> <div class="text-loader">Sending...</div> <div class="s-loader"> <div class="bounce1"></div> <div class="bounce2"></div> <div class="bounce3"></div> </div> </div> </div> </fieldset> </form> <!-- Form End -->

JQuery:

function displayForm(c) { if (c.value == "1") { jQuery('#foodform').fadeIn(); } if (c.value == "2") { jQuery('#foodform').fadeOut(); } };

PHP:

<?php $siteOwnersEmail = 'Myemail@website.be'; if($_POST) { $groupName = trim(stripslashes($_POST['groupName'])); $contactName = trim(stripslashes($_POST['contactName'])); $email = trim(stripslashes($_POST['contactEmail'])); $phone = trim(stripslashes($_POST['contactPhone'])); $amountMembers = trim(stripslashes($_POST['amountMembers'])); $groupMembers = trim(stripslashes($_POST['groupMembers'])); $food = trim(stripslashes($_POST['food'])); $volwassenen = trim(stripslashes($_POST['volwassen'])); $kinderen = trim(stripslashes($_POST['kind'])); // Set Message $message .= "Groepsnaam: " . $groupName . "<br />"; $message .= "Naam contactpersoon: " . $contactName . "<br />"; $message .= "email: " . $email . "<br />"; $message .= "telefoonnr: " . $phone . "<br />"; $message .= "Aantal groepsleden: " . $amountMembers . "<br />"; $message .= "Namen groepsleden: " . $groupMembers . "<br />"; $message .= "Eten 1=ja, 2=nee: " . $food . "<br />"; $message .= "Volwassenen porties: " . $volwassenen . "<br />"; $message .= "Kinder porties: " . $kinderen . "<br />"; $message .= "<br /> ----- <br /> Deze email werd verstuurd via het inschrijvingsformulier. <br />"; // Set From: header $from = $contactName . " <" . $email . ">"; // Email Headers $headers = "From: " . $from . "\r\n"; $headers .= "Reply-To: ". $email . "\r\n"; $headers .= "MIME-Version: 1.0\r\n"; $headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n"; if (!$error) { ini_set("sendmail_from", $siteOwnersEmail); // for windows server $mail = mail($siteOwnersEmail, $subject, $message, $headers); if ($mail) { echo "OK"; } else { echo "Something went wrong. Please try again."; } } # end if - no validation error else { //there was a validation error }

Does anyone know why the input fields inside the "foodform" dont submit? I've been struggling on this for a while now.

Thanks in advance

Simon

解决方案

Try replacing in your PHP code:

$volwassenen = trim(stripslashes($_POST['volwassen'])); $kinderen = trim(stripslashes($_POST['kind']));

with this:

$volwassenen = trim(stripslashes($_POST['volwassenPorties'])); $kinderen = trim(stripslashes($_POST['kindPorties']));

更多推荐

部分表单不提交

本文发布于:2023-10-26 21:44:26,感谢您对本站的认可!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:表单

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!