2016-03-20 30 views
0

John Conde'ye çalışan Authorize.net XML almaya çalışırken ben den Authorize.net XML Class kullanıyorum:Sınıf

https://github.com/stymiee/Authorize.Net-XML

Ama aşağıdaki hatayı alıyorum:

Fatal error: Uncaught exception 'Exception' with message 'Serialization of 'SimpleXMLElement' is not allowed' in [no active file]:0 Stack trace: #0 {main} thrown in [no active file] on line 0

ben İşe yaraması için sınıfa bir şey koymam gerektiğini biliyorum.

Bu ödeme yapıldıktan sonra benim php kodu gönderilir yayınladık: _SESSION için SimpleXMLElement bir örneğini atamak için çalışıyoruz

if ($xml->messages->resultCode == 'Ok' && $xml->isSuccessful()) { 
    $_SESSION['transID'] = $xml->transactionResponse->transId; 
} else { 
    $_SESSION['ErrorMSGTXT'] = $xml->messages->message->text; 
    $_SESSION['ErrorERRORTXT'] = $xml->transactionResponse->errors->error->errorText; 
    exit(); 
} 

cevap

1

. SimpleXMLELement, sahip olduğunuz istisnayı atan bir serialize yöntemine sahiptir.
Örneğin kendisinde ısrar etmek yerine, muhtemelen bu düğümün dize gösterimini (örneğin, casting it to string) saklamak istersiniz.

if ($xml->messages->resultCode == 'Ok' && $xml->isSuccessful()) { 
    $_SESSION['transID'] = (string)$xml->transactionResponse->transId; 
} else { 
    $_SESSION['ErrorMSGTXT'] = (string)$xml->messages->message->text; 
    $_SESSION['ErrorERRORTXT'] = (string)$xml->transactionResponse->errors->error->errorText; 
    exit(); 
}