Hey there.
I waste a whole day by debugging a strange behaviour in IE. I updated a site from RC4 to 1.0, after that everything went fine. Today I noticed, that IE-Users can't finish the checkout process. Respectively they can finish the checkout process, but they don't get an Order-ID and the order stays in "in_checkout" state.
While debugging I detect, that in the step between cart/checkout/review and cart/checkout/complete the $_SESSION[cart_order] gets lost.
In theme_uc_cart_checkout_review() $_SESSION[cart_order] is still set. But in uc_cart_checkout_review_form_submit() $_SESSION[cart_order] doesn't exist. Therefore $order = uc_order_load($_SESSION['cart_order']) (~line 1678) can't work corectly. I point that out by writing print_r($_SESSION) in both functions.
The result is, that the IE-User gets a message similar to "Order is complete, Your Order-ID is: ... " without a number. In the database the order_status is still "in_checkout".
I have NO idea where to search. In Firefox/Opera everything works well. And in IE only the $_SESSION[cart_order] gets lost, not the whole session.
I could understand it, if the whole session gets lost, then it would be a browser problem. And I would understand it, if a Session variable gets lost in every browser, then it would be a code problem. But one variable? And just in one browser?
I'm very thankful for every hint!





Joined: 08/12/2007