3 - Medium
Yes (0)No (0)
found bug in admin side tep_redirect function
Posted by wdepot on 20 February 2013 - 01:24
While updating the database.php function files so that they can use mysqli when it is available (which I did since the mysql functions have been deprecated, see http://addons.oscommerce.com/info/8703) I suddenly was no longer able to log into the admin side of the web site. After much frustration trying to determine the cause I finally found that session variables weren't being saved before the code performed a redirect. After a quick look at the session functions and determining that they used the database functions to save session variables I looked at the catalog side tep_redirect function since I wasn't having any problems with the catalog side at all. It was then that I discovered that the catalog side tep_redirect function performed tep_session_close before hitting the exit statement. The admin side didn't do this. Once I added the call to tep_session_close before the exit in the admin side definition of tep_redirect my problem was solved. Why session variables got saved on the admin side using mysql but not mysqli without using tep_session_close I have no idea but I would highly recommend adding tep_session close to the function.