php - 如何重定向表单提交
问题描述
我创建了一个时事通讯我想在提交表单后重定向我的 PHP 将电子邮件保存到 MySQL 服务器但不重定向到新页面这里我的 PHP 代码是
<?php
include_once("Config.php");
$email_access = new Config();
if(isset($_POST['email_data_values'])){
$n_email = $_POST['email_data_values'];
$email = $email_access->htmlfilter($n_email);
if(preg_match('/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/', $email)){
$email_field['email'] = $email;
$email_check = $email_access->email_exits("email",$email_field);
$redirect_url = "https://www.rambletravels.in/win/";
if($email_check){
$insert = $email_access->insert("email",$email_field);
if($insert){
echo "You email is Registered Speen to Win Prize ";
header("Location: $redirect_url");
}
else{
echo "Not Subscribed";
return false;
}
}
else{
echo "You Have Already entered For Prize";
return false;
}
}
else{
if(!preg_match('/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/', $email)){
echo "Please Enter a Valid Email";
return false;
}
}
}
?>
解决方案
你不能echo
在header
. 更多细节在php.net
推荐阅读
- arrays - 将数据从多个数组导出到 CSV 文件
- c# - c# 如何使用 EPPlus 创建 Excel 范围而不是表格
- ios - 在 iOS 中集成 Snapchat“Snap Kit”登录工具包
- java - Spring boot commandlinerunner 未提交事务
- python - 如何处理从 Python 中的请求库中获取的 JSON 数据?
- python - 多个组的 Python 散点图,x 轴为列,y 轴为值
- sql-server - 需要帮助在 Microsoft SQL Server 2016 上为基于 Web 的搜索工具构建索引
- c++ - 在多个池上拆分线程
- android - 如何观察在初始化/构造函数期间未初始化的 ViewModel 的 LiveData(房间挂起功能)
- adsense - 当我添加google autoad脚本进行网站验证时,Hexo自动在脚本标签中添加data-checked-head="true"属性