gpt4 book ai didi

php - jQuery 电子邮件没有文本/提交两次

转载 作者:行者123 更新时间:2023-11-30 07:05:09 26 4
gpt4 key购买 nike

我正在尝试将电子邮件发送到硬编码的电子邮件地址,作为报告错误按钮的功能。但是,我尝试输入到发送电子邮件的 php 文件的文本不会通过,而我的 javascript 文件中的电子邮件功能一次发送两封电子邮件。不确定为什么会发生这两种情况。

这是我与电子邮件功能有关的所有代码。

错误页面(HTML)

<div data-role="page" id="bug">
<div data-role="header" data-position="fixed">
<h4>Submit a bug</h4>
</div>

<div data-role="content">
<textarea name="textarea" id="textarea"></textarea>
<a href="#first" data-icon="check" data-role="button" data-inline="true" name="send" id="send">Send</a>
<script language="javascript" type="text/javascript">
$("#send").click(function(){
email();
});
function clearText()
{
$('textarea#textarea').val('');
}
</script>
</div><!-- /content -->
</di> <!-- /bug -->

当用户点击“报告错误按钮”时调用上述页面,如下所示:

<a href='#bug' data-rel="dialog" onclick="clearText()" data-close-btn="left" data-role="button" data-inline="true">Report bug</a>

带有电子邮件功能的 Javascript 文件:

function email(){

var name = "Joey";
var email = "example@gmail.com"
var vardata = $("textarea").val();

$.ajax({ type: "POST", url: "email.php", data: vardata, success: function() {
alert("Your bug report was sent!");
}
});

return false;
}

我的 PHP 文件名为:

<?php

$message = $_POST["vardata"];

mail("example@gmail.com", "Mystery person", $message);
?>

如果 $message 字段是硬编码的,我可以很好地在电子邮件中获取文本,但它无法从 vardata 标签中获取它。此外,它提交了两次,如您所见here .只需点击报告错误按钮并点击发送。

最佳答案

当您通过 jQuery 的 ajax 方法向 PHP 发送数据时,将其设为 JSON 对象会很有帮助,这样您就可以从 PHP 中的 $_POST 数组中获取所需的值。

例如:

var name = "Joey"; 
var email = "example@gmail.com"
var vardata = $("textarea").val();

$.ajax({
type: "POST",
url: "email.php",
data: {name:name, email:email, vardata:vardata},
success: function() {
alert("Your bug report was sent!");
}
});

通过这种方式,您可以像这样在您的PHP代码中获取数据:

$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['vardata'];

关于php - jQuery 电子邮件没有文本/提交两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16991705/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com