PHP Перенаправление на другую страницу (с использованием Stripe)

Добрый день,

Я использую Stripe для сбора платежей за свой сайт. У меня есть код, который работает, чтобы принимать платежи, но у меня возникли проблемы с перенаправлением пользователя на страницу с благодарностью после ее подписки.

Вот что я имею:

<!--?php get_header(); ?-->
<!--?php require_once('/home4/threehs/public_html/wp-content/themes/NoFuss/config.php'); 
if ($_POST) {
 Stripe::setApiKey($stripe['secret_key']);
 $error = '';
 $success = '';
 try {
 if (!isset($_POST['stripe_token']))
 throw new Exception("The Stripe Token was not generated correctly");
 $customer = Stripe_Customer::create(array(
 "email"=-->$_POST['stripeEmail'],
 "card" => $_POST['stripe_token'],
 "plan" => 'yearly'
));

 $success = 'HERE IS WHERE I WANT TO REDIRECT TO THANK YOU PAGE';
 }
 catch (Exception $e) {
 $error = $e->getMessage();
 } 
}

?>

HTML Signup form here

Это код, который я использую из Stripe (и несколько руководств). Похоже на успех, я либо получаю строку, либо когда я пытаюсь сделать перенаправление заголовка, он возвращает ошибку.

благодаря

2 ответа

Вы можете сделать это по-разному, но использование заголовка Location вероятно, наиболее распространено:

header('Location: http://www.example.com');
exit;

Изменить: Забыл отметить, что exit является намеренным. Вы всегда должны включать его после перенаправления, чтобы прекратить обработку и предотвратить утечку конфиденциальной информации (например, перенаправление от страницы администратора, когда пользователь не имеет привилегий).


перед любыми данными заголовки должны находиться в ОЧЕНЬ верху страницы. в середине кода не будет работать

licensed under cc by-sa 3.0 with attribution.