gpt4 book ai didi

javascript - 通过邮件发送 jQuery 变量

转载 作者:行者123 更新时间:2023-11-30 10:14:41 25 4
gpt4 key购买 nike

我有一个 jQuery 变量,它包含来自表单的 HTML 和值。我想使用带有 @mail 的单独 php 文件通过电子邮件发送它。

我试图在表单提交时使用 jQuery $.ajax 函数发送此变量,但它不会将变量发送到 php 文件,因此不会发送任何电子邮件。

这是我的代码

jQuery :

$('form').submit(function(){
var foo = '<p>Some message</p>';
$.ajax({
url: '/send.php',
type: 'post',
data: {foo : foo},
success: function() {
alert('email sent!');
}
});
return false;
});

发送.php :

<?php

$email_to = "XXX";
$email_from = "YYY";
$email_message = $_POST["foo"];
$email_subject = "[Email subject]";
$headers = 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .
'X-Mailer: PHP/' . phpversion();

@mail($email_to, $email_subject, $email_message, $headers);
?>

我试图在 send.php 中回显 foo 变量并在 jQuery 中删除 return false; 但变量似乎没有传递到文件,什么也没有显示。

我做错了什么?

最佳答案

您的代码没问题!我们假设您的 PHP Web 服务器正在运行,因此 2 个唯一可能的错误是:

url: '/send.php'

您确定 send.php 位于您域的根目录中吗?喜欢

http://localhost/send.php 

第二种可能性是您之前有一个 javascript fatal error ,因此您的 ajax 行将永远不会被读取...

如何调试?

1 - 发布表单时页面是否刷新?如果是,则之前有错误阻止return false;被读取

2 - 您可以在大多数浏览器中按 F12 来打开开发人员工具,在这种情况下,网络面板就是您所需要的:只需在打开此面板的情况下尝试您的代码,看看那里会发生什么...404 错误代码表示“我找不到 send.php!”。

FIDDLE得到 404 因为 http://fiddle.jshell.net/send.php不存在。

关于javascript - 通过邮件发送 jQuery 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24491007/

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