gpt4 book ai didi

javascript - Php Ajax 表单未提交

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

大家好,我正在创建一个时事通讯注册表单并尝试使用 AJAX 提交它。

这是我的表格:

<div id="form-content">
<form method="POST" id="news-form" name="newsletter">
<div class="bd-input-2 form-group">
<input type="email" name="newsletter_email" placeholder="Enter your email address" required />
</div>
<div class="form-group">
<button type="submit" name="newsletter">Submit</button>
</div>
</form>
</div>

这是我的 JS 文件,与表单位于同一页面:

$('#news-form').submit(function(e){     
e.preventDefault();
$.ajax({
url: 'newsletter-submit.php',
type: 'POST',
data: $(this).serialize()
})
.done(function(data){
$('#form-content').fadeOut('slow', function(){
$('#form-content').fadeIn('slow').html(data);
console.log(data);
});
})
.fail(function(){
alert('Ajax Submit Failed ...');
});
});

在控制台上什么都没有显示,甚至没有错误只是一个空行。

还有我的 newsletter-submit.php 文件:

<?php
if(isset($_POST['newsletter'])){
$newsletter_email = filter_var($_POST['newsletter_email'],FILTER_VALIDATE_EMAIL);
if(filter_var($newsletter_email, FILTER_VALIDATE_EMAIL)){
$newsletter_email = filter_var($newsletter_email, FILTER_VALIDATE_EMAIL);
$em_check = sqlsrv_query($con, "SELECT email FROM newsletter_signups WHERE email='$newsletter_email'",array(), array("Scrollable"=>"buffered"));
$num_rows = sqlsrv_num_rows($em_check);
if($num_rows > 0){
echo "<br/><p style='color: #fff;'>Email exist in our newsletter list.</p>";
}else{
$query = "INSERT INTO newsletter_signups (email) VALUES ('{$newsletter_email}')";
$insert_newsletter_query = sqlsrv_query($con,$query);
echo '<br/><p style="color: green;">Thank you for sign up in our newsletter</p>';
}
}
}
?>

但是,如果我在 php 标签 之后添加任何代码,例如 Hello world,它会在提交后显示。

我的 php 代码在 AJAX 文件之前运行

最佳答案

您的输入字段名为 newsletter_email 并且在您的 php 中您正在检查 isset($_POST['newsletter']) ,它始终为 false。

关于javascript - Php Ajax 表单未提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46794046/

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