Имею код формы отправки - нужно реализовать переход на страницу "Спасибо" после срабатывания формы
Подскажите пожалуйста
Как реализовать это на PHP?
Добавлял header("Location: полный путь"); ... перед print_r($var);
Но не работает.
Заранее спасибо.
<?php
$method = $_SERVER['REQUEST_METHOD'];
//Script Foreach
$c = true;
if ( $method === 'POST' ) {
$project_name = trim($_POST["project_name"]);
$admin_email = trim($_POST["admin_email"]);
$form_subject = trim($_POST["form_subject"]);
foreach ( $_POST as $key => $value ) {
if ( $value != "" && $key != "project_name" && $key != "admin_email" && $key != "form_subject" ) {
$message .= "
" . ( ($c = !$c) ? '<tr>':'<tr style="background-color: #f8f8f8;">' ) . "
<td style='padding: 10px; border: #e9e9e9 1px solid;'><b>$key</b></td>
<td style='padding: 10px; border: #e9e9e9 1px solid;'>$value</td>
</tr>
";
}
}
} else if ( $method === 'GET' ) {
$project_name = trim($_GET["project_name"]);
$admin_email = trim($_GET["admin_email"]);
$form_subject = trim($_GET["form_subject"]);
foreach ( $_GET as $key => $value ) {
if ( $value != "" && $key != "project_name" && $key != "admin_email" && $key != "form_subject" ) {
$message .= "
" . ( ($c = !$c) ? '<tr>':'<tr style="background-color: #f8f8f8;">' ) . "
<td style='padding: 10px; border: #e9e9e9 1px solid;'><b>$key</b></td>
<td style='padding: 10px; border: #e9e9e9 1px solid;'>$value</td>
</tr>
";
}
}
}
$message = "<table style='width: 100%;'>$message</table>";
function adopt($text) {
return '=?UTF-8?B?'.Base64_encode($text).'?=';
}
$headers = "MIME-Version: 1.0" . PHP_EOL .
"Content-Type: text/html; charset=utf-8" . PHP_EOL .
'From: '.adopt($project_name).' <'.$admin_email.'>' . PHP_EOL .
'Reply-To: '.$admin_email.'' . PHP_EOL;
mail($admin_email, adopt($form_subject), $message, $headers );
abstract class Gateway
{
public $name;
protected $host;
protected $port;
protected $apiUrl;
protected $proto_part;
protected $port_part;
protected $handle;
protected $botToken;
public function __construct($token, $options = [])
{
if ($this->name == null) {
throw new Exception('Gateway name is empty!');
}
$this->handle = curl_init();
$this->host = $host = $options['host'];
$this->port = $port = $options['port'];
$this->botToken = $token;
$this->proto_part = ($port == 443 ? 'https' : 'http');
$this->port_part = ($port == 443 || $port == 80) ? '' : ':' . $port;
}
abstract public function request($method, $params = []);
}
class TelegramGateway extends Gateway
{
public function __construct($token, $options = [])
{
$this->name = 'telegram';
$options += [
'host' => 'api.telegram.org',
'port' => 443,
];
parent::__construct($token, $options);
$this->apiUrl = "{$this->proto_part}://{$this->host}{$this->port_part}/bot{$token}";
}
public function request($method, $params = [])
{
$url = $this->apiUrl . '/' . $method;
$query = http_build_query($params);
curl_setopt($this->handle, CURLOPT_URL, $url);
curl_setopt($this->handle, CURLOPT_POST, true);
curl_setopt($this->handle, CURLOPT_POSTFIELDS, $query);
curl_setopt($this->handle, CURLOPT_RETURNTRANSFER, true);
$response_str = curl_exec($this->handle);
$response = json_decode($response_str, true);
return $response;
}
}
$gateway = new TelegramGateway('*********************');
$message = json_encode($_POST, JSON_UNESCAPED_UNICODE);
$var = $gateway->request('sendMessage', [
'chat_id' => '****',
'text' => $message,
'parse_mode' => 'HTML',
]);
print_r($var);
die(success);
Либо же JS Часть
$('form').each(function(index, el) {
$(el).validate({
rules:{
"phone":{ required:true }
},
submitHandler: function(form){
$(form).ajaxSubmit({
type: 'POST',
url: 'mail.php',
success: function() {
testSlider.goToSlide( $('.step-slide').length - 1 );
$('.header-line').slideUp(300);
$('.progress-line').slideUp(300);
}
});
}
});
});