gpt4 book ai didi

php - AJAX 表单提交成功处理程序的问题

转载 作者:行者123 更新时间:2023-12-01 02:10:46 25 4
gpt4 key购买 nike

我遇到一个问题,我的 AJAX 表单帖子创建了一个警报,似乎回显整个页面,而不仅仅是成功消息,而且我无法弄清楚我做错了什么。 此外,我遵循了堆栈上的许多技巧来通过序列化传递数据,但我习惯了诸如 data { action: add, type: new } 之类的东西,并且在附加其他内容时遇到问题由于 $(this).serialize();

,将变量发送到数据上

PHP

if (isset($_POST['type']) && $_POST['type'] == 'email') {
$emailFrom = EMAIL_FROM;
$email_to = $_POST['email_to'];
$subject = $_POST['subject'];
$body = $_POST['body'];
if (mail($email_to, $subject, $body, "From: <$emailFrom>")) {
return 'Email was successfully sent!';
} else {
return 'An error occured, email could not be sent.';
}
exit();
}

JS

 <script>
$(document).ready(function() {
$("#user_email").submit(function(e) {
var subject = $('#subject').val();
var _body = $('#body').val();
if (_body && subject) {
$.ajax({
type: "POST",
url: $(this).attr('action'),
data: $(this).serialize(),
success: function(data)
{
alert(data);
}
});
} else {
alert ('Subject and Body fields are both required.');
}
e.preventDefault();
});
});
</script>

HTML

<h3>Send <?php echo $row_users['full_name'];?> an email</h3>
<div class="ec-messages messages-warning" style="width:300px;">Emails will be sent from the website default.</div>
<form action="<?php echo $_SERVER['REQUEST_URI']; ?>" method="post" name="user_email" id="user_email">
<input name="email_to" type="hidden" value="<?php echo $row_users['user_email'];?>">
<label>Subject</label><input type="text" name="subject" id="subject">
<label>Body</label><textarea name="body" id="body" rows="10" class="span5"></textarea>
<?php echo createFormButtons(true, true); ?>
</form>

最佳答案

  if (isset($_POST['type']) && $_POST['type'] == 'email') {

}

上面的条件会发现名称为type且值为“email”的字段是否存在

由于您的 ajax 请求以整个 HTML 形式给出响应,这意味着不满足此条件

只需在表单中添加以下行

   <input type='hidden' name='type' value='email' />

请告诉我这是否适合您

关于php - AJAX 表单提交成功处理程序的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25278203/

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