提交邮件黑猩猩订阅 php 后,我有一个空白页
I have a blank page after submitting mailchimp subscribe php
我使用下面的html代码在我的mailchimp帐户列表中提交用户电子邮件使用mailchimp API。
表单代码:
.....
<form id="signup-form" action="php/newsletter-subscribe.php" method="post">
<input type="email" name="email" id="email" placeholder="Email Address" />
<br>
<input type="submit" value="Go!" onclick="wating()" />
</form>
......
时事通讯订阅PHP代码:
require_once 'mailchimp/MailChimp.php';
use 'DrewM'MailChimp'MailChimp;
// Email address verification
function isEmail($email) {
return filter_var($email, FILTER_VALIDATE_EMAIL);
}
if($_POST) {
$mailchimp_api_key = 'xxxxxxxxxxxxxxxxxxxxx-xx'; // enter your MailChimp API Key
$mailchimp_list_id = 'xxxxxxxxxx'; // enter your MailChimp List ID
$subscriber_email = addslashes( trim( $_POST['email'] ) );
if( !isEmail($subscriber_email) ) {
echo '<script type="text/javascript">swal("Error!", "Please try again.", "error")</script>';
} else {
$array = array();
$MailChimp = new MailChimp($mailchimp_api_key);
$result = $MailChimp->post("lists/$mailchimp_list_id/members", [
'email_address' => $subscriber_email,
'status' => 'subscribed',
]);
if($result == false) {
$array = '<script type="text/javascript">swal("Error!", "Please try again.", "error")</script>';
} else {
$array = '<script type="text/javascript">swal("Great!", "Your email has been subscribed", "success")</script>';
}
echo json_encode($array);
}
}
问题是在我提交表格后,我得到没有任何错误日志的空白页面,并且电子邮件添加到我的 mailchimp 帐户中没有任何错误。
我尝试使用另一个 java 脚本警报(如 alert("Text Here");
(更改echo javascript in line 22, 35 and 38
,它的工作,除了我得到同样的东西空白页
如何解决此问题并在同一个 html 表单页面中回显 javascript 警报而不重定向到空白页面?
首先,您要设置:
$array = array();
但是,稍后,您执行以下操作:
if($result == false) {
$array = '<script type="text/javascript">swal("Error!", "Please try again.", "error")</script>';
} else {
$array = '<script type="text/javascript">swal("Great!", "Your email has been subscribed", "success")</script>';
}
echo json_encode($array);
换句话说,您正在将数组更改为字符串。尝试将代码更改为:
if($result == false) {
$array = array('<script type="text/javascript">swal("Error!", "Please try again.", "error")</script>');
} else {
$array = array('<script type="text/javascript">swal("Great!", "Your email has been subscribed", "success")</script>');
}
echo json_encode($array);
此外,我会避免在那里使用<script type="text/javascript">
,我只会返回正确的 json 响应。然后,使用 ajax (jquery( 调用此文件,解码 json 并显示警报。
也许这样的事情会给你一个想法:http://labs.jonsuh.com/jquery-ajax-php-json/
相关文章:
- 是否有一个JS/jQuery函数可以获取某个类的每个元素的ID
- 如何在只能有一个asp.net表单的主页上从asp.net页面中的javascript中获取值
- 有可能在来自链接的警报中有一个值吗
- 是否<asp:文本框>有一个onFocusLost事件
- 让谷歌数据图表有一个24小时x轴
- PayPal按钮是否有一个简单的选项,其中金额基于一些用户输入
- 我确实有一个表单,如果用户输入了输入,它应该检查否定或空的输入框,并抛出一条警告消息
- 在这个使用hasOwnProperty的对象扩展程序中有一个错误,I'我不确定那个bug是什么,也不确定这个扩展
- 当知道同一hiearch中至少有一个元素时,遍历到元素.结构使用jquery
- PNG图像被覆盖,但每个图像都有一个链接可以更改,每次一个-Javascript/jQuery/CSS
- jstree 是空白的,并且在实例化后有一个空的
- 为什么我在所有HTML内容下面都有一个很大的空白
- 打印时总是有一个额外的空白页
- 提交邮件黑猩猩订阅 php 后,我有一个空白页
- 我的移动网站右侧有一个令人讨厌的空白
- 有什么方法可以让用户从角度下拉菜单中选择一个空白值吗
- 使用不同的持续时间显示一个接一个的图像,中间有一个空白屏幕
- 如何在ng-option中有一个空白值,而不是NULL
- 当我有一个滑块时,右边有空白
- 添加类如果链接有一个目标空白