在网站设计方面我是一个相当新秀,但我设法建立了一个带有bootstrap和jquery的网站,包括一个小型表格(在模态内),供客人注册参加活动。
表单将其数据(出席,姓名等)发送到php脚本,然后将其发送到邮件并回显邮件主体,然后该邮件主体也显示在iFrame中,供用户查看确认。
PC上的一切正常。我已经在三台不同的机器上使用chrome,firefox和IE测试了它。
它在我的个人Android手机上同样有效。
这是一个问题:在我的公司Blackberry和我姐姐的Android上,它不起作用。该表单似乎工作并触发PHP但它似乎只传递空变量。生成的邮件和iFrame中的确认信息为空白。
任何想法有什么不对?安全设置或阻止实际数据发送的任何内容?我很困惑,用谷歌搜索了一个小时而没有找到解决方案......
代码(缩短):
<form action="rueckmeldung.php" method="post" autocomplete="off" target="hiddenForm" onsubmit="this.reset();" content="text/html; charset=UTF-8" > <!-- onsubmit="this.submit(); this.reset(); return false; window.location.assign('#close')"-->
<IFRAME style="display:none; width:100%; height:auto; border:0; margin-left: 5rem; margin-right: 5rem;" name="hiddenForm" id="hiddenframeID" class="mdlRMhide2"></IFRAME>
<!-- Modal Body -->
<div class="modal-body mdlRMhide1" novalidate="novalidate">
<!-- Ja/Nein-->
<section id="secJaNein" class="modal-section">
<div class = "row">
<div class="col-xs-12 col-sm-6">
<div class="input-wrap"><input type="radio" name="entrykommejanein" id="e1" value="Ja" required />
<label for="e1"><h3>Natürlich komme ich!</h3></label></div>
</div>
<div class="col-xs-12 col-sm-6">
<div class="input-wrap"><input type="radio" name="entrykommejanein" id="e2" value="Nein" required />
<label for="e2"><h3>Leider schaffe ich es nicht</h3></label></div>
</div>
</div>
</section>
<!-- Name Gast -->
<section id="secGast" class="modal-section">
<div class= "row">
<div class="col-xs-12 col-sm-6 ">
<div class="form-group has-feedback">
<label for="gastVorname"><h2>Vorname</h2></label>
<input type="text" name="entryvorname" id="gastVorname" class="form-control" required >
<!-- <small class="help-block" data-fv-validator="notEmpty" data-fv-for="guest-first-name" data-fv-result="NOT_VALIDATED" style="display: none;">First name is required</small> -->
</div>
</div>
<div class="col-xs-12 col-sm-6">
<div class="form-group has-feedback">
<label for="gastNachname"><h2>Nachname</h2></label>
<input type="text" name="entrynachname" id="gastNachname" class="form-control" required >
</div>
</div>
</div>
</section>
</div>
<!-- Modal Footer -->
<div class="modal-footer">
<div class = "row">
<div class="col-xs-6 mdlRMhide1">
<button class="button btn btn-lg form-btn" type="submit" value="Submit" >Abschicken</button>
</div>
<div class="col-xs-12 mdlRMhide2" style="display:none">
<button class="button btn btn-lg form-btn btnModalRMClose" data-dismiss="modal">Schließen</button>
</div>
</div>
</div>
</form>
PHP:
<?php
$myemail = 'mail@domain.com';
$kommejanein = $_POST['entrykommejanein'];
$vorname = $_POST['entryvorname'];
$nachname = $_POST['entrynachname'];
$to = $myemail;
$email_subject = "Rückmeldung von $vorname $nachname : $kommejanein";
$email_body = "\n Teilnahme: $kommejanein \n Gast: $vorname $nachname";
$headers = array();
$headers[] = "From: $myemail";
$headers[] = "Reply-To: $myemail";
$headers[] = "Content-type: text/plain; charset=utf-8";
mail($to,$email_subject,$email_body,implode("\r\n",$headers));
echo nl2br($email_body);
?>
答案 0 :(得分:0)
可能是缺少开头的表格标签吗?使用var_dump($_POST)
检查目标网页上的搜索结果。
答案 1 :(得分:0)
所以,我终于找到了问题,虽然我不太明白,为什么它在一个机器人上造成了麻烦而在另一个机器人上却没有,而不是在PC上......
取出后
onsubmit="this.reset();"
它适用于所有设备(到目前为止),并且公式内容将转发给PHP。