Posted: January 19, 2022 at 11:34 am
|
Using Question Groups on the registration form, some visitors are seeing the previous submission personal data. Caching is disabled and this doesn’t always occur. /registration-checkout/?uts=1642617113#checkout UTS sometimes generates an old value? This seems to be redirected through the plugin, re-showing a previous users’ submission / attendee data. We need a unique form to be generated for each ticket. Guest users should not see the previous submission. |
Hi there, In short, this has to be some form of caching. UTS = Unix Time Stamp … within the plugin, it is literally the value returned by the PHP function time() (meaning the number seconds passed since January 1 1970 00:00:00 GMT) so if your getting ‘old’ values… its because the request was cached. As much as we wish it could sometimes, time never goes backwards 🙂 You mentioned caching is disabled, is that a caching plugin? Which one? Have you checked for server-side caching? My guess is there is server-side caching somewhere here, who is your host? Can you link me to an event I can test? |
|
|
Hello! We have disabled our WordPress caching plugin & we should not have server level caching. We are hosted with LiquidWeb. The homepage has the calendar with events at: https://parkevents.yorkcountypa.gov/ OR direct: https://parkevents.yorkcountypa.gov/registration-checkout/?uts=1642618171#checkout |
|
It looks like the plugin is trying to loop through previous registrations / tickets and display them? Is there a setting where we can disable showing other users’ info: /event-espresso-core-reg/modules/single_page_checkout/reg_steps/attendee_information/attendee_info_single.template.php Several plugin files look like they are trying to retrieve this data. |
|
Can you confirm that your plugin is adding the UTS query parameter? I see in EE_config.core.php: /** |
No, it does not display previous registrations.
There’s no setting for this because it’s not a feature, may I ask what it is about that template file gives you the impression that it pulls in past registrations?
Yes, we add the UTS value to the reg page URL. It is a very basic cache-busting method in which having a unique value in the query string can prevent the browser/server from caching the output and other than that, it isn’t used within Event Espresso. |
|
|
It looks like within the single checkout module files, the previous ticket / attendee is being referenced: $att_nmbr = 0; |
That’s not what is happening there, it’s nothing to do with the previous registrations/ticket/attendee. Registrations are created early in the checkout process (when you submit tickets) the SPCO module is looping over those registrations to generate the attendee information form but again, they are NOT previous registrations. If EE did what you are saying by default it would cause issues for pretty much everyone who uses it, there is no valid reason for EE to pull in and display the previous submission for the registrations. It simply doesn’t work that way.
The only time I see anything like this is when the requests are cached, so your 100% sure you don’t have ANY form of caching enabled? Not just some form of page caching but OPCache, Object caching such as Memcached, Load balancing etc?
No, what you are seeing is not a ‘feature gone wrong’ so there isn’t a reset of any kind. If you are getting a registration form with another registrants details you either have a cached response from them or you’ve taken over their session…. in either case, ‘resetting’ the form isn’t a solution, it masks the problem and could cause more issues when you complete/submit the form. |
|
|
Thank you for all the info on this! Instead of going with a ‘reset’ what do you recommend for next steps on resolving this issue? As this is showing personal data; we need to make sure new customers do not see any previous registered users. |
The only time I see anything like this is when the requests are cached, so are you 100% sure you don’t have ANY form of caching enabled? Not just some form of page caching but OPCache, Object caching such as Memcached, Load balancing etc? What hosting package do you have with LiquidWeb? |
|
|
We have their Cloud hosting package; we have full WHM / cPanel access and we can confirm there is not any form of caching (OPCache, Object caching such as Memcached, Load balancing etc) |
Ok, so has anything changed recently? Either on the site itself or with your hosting? Currently, you’re running version 4.9.65.p which was released on July 17, 2018 so this isn’t an issue from an EE update. Is there something preventing you from updating from that version? We’ve had a lot of bug fixes and for various areas of the plugin in the 3+ years since that version. |
|
|
Hello again! We have been experimenting with different plugin versions; it doesn’t matter if we are on the originally working, old versions or the latest edition. The issue is still persisting. We will update to the latest version again. |
Ah, ok. So yeah, you shouldn’t get different results with different versions of EE and this issue as the way in which it works hasn’t changed in a long time now. So then what else has changed, site/server wise? |
|
|
Hello! I appreciate your quick replies. Based on your feedback and suggestions, we’ve made a copy of this site on our staging server. Now we are on our own server and can rule out caching completely. We have disabled all other plugins. These are all on the latest version; Only active plugins are: Event Espresso We have reverted to using the default WordPress 2021 Theme. There should be no area for conflict with your plugins now. However, we are still able to replicate the last issue. We can provide access if you need to look into this further. Since we ruled out these areas as possible conflicts, what else could be the cause of this issue. Thanks again! |
Is the staging server still with LiquidWeb? If so it’s still possible to be some kind of config issue. |
|
|
Nope–it is a completely different server. We do not have any type of server level caching enabled as this staging server is only used for site builds, not live sites. With everything else ruled out, are you able to take a deeper look into this? 1. Bottom calendar on homepage; click any event. Example: https://yorkcountypaevents.webpagefxstage.com/registration-checkout/?uts=1642629236#checkout Benjamin Mahon and other info populates into Attendee 1–no caching, no other active plugins/theme. |
Ok, can you send me login details for that site so I can have a look around? You can use the form here: |
|
|
Thanks! I’ve submitted that info for you. |
|
Hello again! When looking on staging I noticed that EE was generating a cookie called PHPSESSID. When EE was disabled that cookie was not generating. From there I found where EE was storing transaction data and matching up users with their session ids and found that the new session id that was created and stored in my cookie was not in any of those DB entries, so I believe that my session ID is fresh and unique to me. I also checked the registrations table and searched for my session ids within the reg_session column and I’m not seeing any of my session ids. Oddly enough, when I change my session ID to one from the reg_session column and refresh, the form clears. When I refresh again however, I see the previous registration info in the form that I was seeing before — so something within the plugin is incorrectly associating reg data with PHP sessions. What this looks like: EE is matching up new sessions with old transaction data. It almost seems no matter what session ID we use, its still pulling in old registration data. It’s not an issue with any of our custom code, or our theme, or a plugin conflict, its something within the core registration plugin of EE. |
Hi there YCParks I’m Event Espresso’s lead developer Brent. Everything you are explaining sounds exactly like caching. We have seen this scenario play out many times before and it has always been some form of caching that was running. Your best bet is to contact your hosting company (again) but insist on having this issue elevated to the next level of support. Are you on a dedicated server, or VPS, or a generic shared server account (indistinguishable from VPS these days, since it IS a VPS but with super limited resources)? On any kind of cheaper VPS you can almost guarantee that the hosting company is going to be aggressively caching as much as possible to keep the resources used by any single VPS from affecting the performance of the other VPSs on that same server. So again, this looks exactly like caching, and hosting companies will very often claim it’s not… but it is. I’m not a gambling man, but I would have no hesitation placing a bet on this being caching. Why? Because the number of other things that would have to be going wrong to cause the same thing is just astronomically unlikely. Let’s walk through the process: – so as you have discovered, when Event Espresso (EE) is active, a cookie is generated named PHPSESSID. This is all being done by PHP which is the scripting language that your server, and WordPress, and the vast majority of websites on the internet are being powered by. We simply call a function called – once EE receives the PHPSESSID from the PHP session cookie, we use that ID to pull any previous session data from the database. This includes any transaction and registration data for any active checkout processes. – If we find a record matching the PHPSESSID, we populate the checkout using that information so that the user can continue with the registration process. Despite there being a LOT of code involved in the entire checkout process, connecting the session ID with a database record is really simple and straightforward. In order for that process to go wrong there would have to be one of the following situations occurring: – a problem with cookies in general (would affect nearly 100% of the internet) This is why I said that despite being completely against gambling, I would bet that your problem is caching. In order for this issue to be occurring, either some totally crazy super rare and unlikely problem is happening… OR… your site is being cached, which is really really common (almost ALL servers utilize caching in one way or another) AND causes the EXACT issue you are experiencing. And again, your hosting company is definitely implementing multiple layers of caching within their infrastructure. They ALL do. In fact you would not want to be using a hosting company that uses zero caching of any kind because their servers would just not perform as well. The most likely problem here is that the first tier support at your hosting company does not know enough to solve this problem for you. Force them to elevate the issue and find the source of the caching and have it turned off. take care, hope this gets resolved quickly for you. |
|
The support post ‘Registration Form Showing Other User Submission Values’ is closed to new replies.
Have a question about this support post? Create a new support post in our support forums and include a link to this existing support post so we can help you.