Sitzung auf Seitenumleitung zerstört

Ich entwickle ein Plugin, wo ich eine Sitzung auf Init Hook gestartet habe. Ich habe ein Formular, das beim Senden eine function aufruft, die SDK verwendet (dh Zahlung wird hier abgewickelt). Wenn diese function FALSE zurückgibt, muss ich den Benutzer auf die vorherige Seite (oder die angegebene URL) redirect, wo ich die zuvor in der Sitzung gespeicherten Werte benötige. Aber wenn ich versuche, sie anzurufen, bekomme ich keine. Es scheint, als würde die Sitzung nicht mehr funktionieren.

Kann mir jemand dabei helfen?

Die folgende function behandelt den SDK-Teil, der entweder true oder false zurückgibt.

function authorize_net_payment_process($order_metas) { $options = get_option('wp_travel_engine_settings', true); $pno = $_SESSION['travelers']; $errors = ''; if ( ! isset( $_POST['authorize']['card_number'] ) || $_POST['authorize']['card_number'] == '' ) { $errors = __( 'You must enter a card number', 'wte-authorize-net'); } if ( ! isset( $_POST['authorize']['card_name'] ) || $_POST['authorize']['card_name'] == '' ) { $errors = __( 'You must enter the name on your card', 'wte-authorize-net'); } if ( ! isset( $_POST['authorize']['card_exp_month'] ) || $_POST['authorize']['card_exp_month'] == '' ) { $errors = __( 'You must enter an expiration month', 'wte-authorize-net'); } if ( ! isset( $_POST['authorize']['card_exp_year'] ) || $_POST['authorize']['card_exp_year'] == '' ) { $errors = __( 'You must enter an expiration year', 'wte-authorize-net'); } if ( ! isset( $_POST['authorize']['card_cvc'] ) || $_POST['authorize']['card_cvc'] == '' || strlen( $_POST['authorize']['card_cvc'] ) amount = $_SESSION['trip-cost']; $transaction->card_num = strip_tags( trim( $_POST['authorize']['card_number'] ) ); $transaction->card_code = strip_tags( trim( $_POST['authorize']['card_cvc'] ) ); $transaction->exp_date = strip_tags( trim( $_POST['authorize']['card_exp_month'] ) ) . '/' . strip_tags( trim($_POST['authorize']['card_exp_year'] ) ); $transaction->first_name = $first_name; $transaction->last_name = $last_name; $transaction->address = $_POST['wp_travel_engine_booking_setting']['place_order']['booking']['address']; $transaction->city = $_POST['wp_travel_engine_booking_setting']['place_order']['booking']['city']; $transaction->country = $_POST['wp_travel_engine_booking_setting']['place_order']['booking']['country']; $transaction->email = $_POST['wp_travel_engine_booking_setting']['place_order']['booking']['email']; $cost = $_SESSION['trip-cost']; $cost = str_replace(',', '', $cost); $response = $transaction->authorizeAndCapture(); if ( $response->approved ) { 

Wenn false zurückgegeben wird, wird der Benutzer auf die vorherige Seite umgeleitet, wo er die Werte erneut eingibt, da der vorherige durch die obige function falsch zurückgegeben wurde.

Ich brauche die $ _SESSION innerhalb dieser function erneut (Benutzer sendet das Formular erneut im Fall von false nach Umleitung).

Vielen Dank!

Solutions Collecting From Web of "Sitzung auf Seitenumleitung zerstört"