首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >成功时弹出电子邮件订阅表单

问成功时弹出电子邮件订阅表单
EN

Stack Overflow用户
提问于 2014-03-28 18:01:14
回答 2查看 1.2K关注 0票数 2

我正在尝试弄清楚如何从这个现有的订阅表单修改脚本:

HTML

代码语言:javascript
复制
<form method="post" action="subscribe.php">
    <input type="text" name="email"/>
    <input type="submit" value="Submit" class="submit-btn">
    <input type="hidden" name="success" value="test-success.html">
    <input type="hidden" name="error" value="test-error.html">
</form>

PHP

代码语言:javascript
复制
    if (preg_match('/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/', $email))
    {
        if ($result && !empty($successUrl))
        {
            header( "Location: $successUrl") ;
        }   
        else if (!empty($errorUrl))
        {
            header( "Location: $errorUrl") ;
        }
        else
        {
            echo 'Error';
        }
    }
    else if (!empty($errorUrl))
    {
        header( "Location: $errorUrl") ;
    }
    else
    {
        echo 'Error';
    }

    exit();
}
?>

我希望通过弹出窗口显示消息,而不是重定向到成功/错误页面。

我使用的弹出窗口是Magnific弹出窗口。

http://dimsemenov.com/plugins/magnific-popup/documentation.html

我尝试编辑输入类型中的值&在弹出链接中添加,但是它不能正常工作。我也不擅长php脚本,我可以知道我应该怎么做吗?

EN

回答 2

Stack Overflow用户

发布于 2014-03-28 18:04:28

您可以使用原生Javascript警告框来显示弹出窗口

代码语言:javascript
复制
else if (!empty($errorUrl))
    {
        echo "<script>alert('Error !');</script>";
        echo "<script>window.location.href=$errorUrl</script>";
    }
票数 0
EN

Stack Overflow用户

发布于 2014-03-28 18:07:40

您当前的设置有一个HTML站点重定向到一个PHP脚本,该脚本随后验证数据。PHP脚本是服务器端的,不能显示弹出窗口。

您应该重新修改表单,使其使用AJAX并在后台发布表单,然后在成功时显示弹出窗口。例如,您可以使用jQuery执行此操作,有关如何执行此操作的更多信息,请参阅jQuery Ajax POST example with PHP。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22709517

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档