Jump to content

Sequence of events in page loading?


MarkE
 Share

Recommended Posts

I'm trying to debug a weird issue with POST variables disappearing. For some reason this only happens when the url of the page with the form is www.... as opposed to the canonical form. I have placed a trap in various places (the trap is just to test for $_SERVER['REQUEST_METHOD'] == 'POST' and, if true,  var_dump($_POST) and exit) with the following results:

  • in ready.php the dump executes and the POST vars are there
  • in _init.php the POST vars are no longer there
  • if I hook Page::loaded, the POST vars are not there

So the vars are getting lost between ready.php and Page::loaded. I'm afraid I don't know PW well enough in terms of what happens in between these, so I don't know where to place my trap next. Any suggestions?

EDIT: if I hook after PageRender::renderPage, the POST vars are there. So what happens between PageRender::renderPage and Page::loaded?

Link to comment
Share on other sites

OK - I've debugged the issue, although I never understood the exact sequence.

FWIW, without going into details, I learned two things about ProcessWire while debugging this:

  1. If you are signed into mysite.com, this does not mean that you are signed into www.mysite.com although they are the same PW site.
  2. If a template has caching turned on, it does not detect if the the request method changes from GET to POST (with variables supplied) or if new/changed GET parameters are supplied.

I don't know if these behaviours are intentional but they both caught me out. In particular, I'm surprised that PW doesn't serve up a new page with a POST.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...