Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister

Re: possible to repeat if statement?

by sundialsvc4 (Abbot)
on May 04, 2013 at 16:22 UTC ( #1032056=note: print w/ replies, xml ) Need Help??

in reply to [SOLVED] possible to repeat if statement?

Remember that, immediately after print redirect("search.cgi"); , you must return.   Your code should not proceed beyond that point, because having issued the redirect-order in response to this HTML packet, you have nothing further to do with this.   (The user’s browser will receive the redirect, and will act upon it, and so, at some time in the future, you’ll (maybe...) get another HTML packet from the same user requesting the new address.)

The same thing is true, later on, when you (ask the browser to) redirect and (ask the browser to) set a cookie.   When you have given the browser that instruction, you are done (for now).   So, you must return.

It is reasonable to generate the login form as your output, as you do now, either when “login failed” or,in the case where param is not-present, they are here for the first time and not-yet logged in.

So, your (corrected) logic will have three possible outcomes, and it will execute one of these three and then return:

  1. If the user is logged-in, he is redirected to search.cgi.
  2. If the user presents valid credentials, he is redirected and a cookie is stored.
  3. Otherwise, the login form is displayed, with-or-without an “incorrect password” warning.

Comment on Re: possible to repeat if statement?

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1032056]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (5)
As of 2015-11-25 11:01 GMT
Find Nodes?
    Voting Booth?

    What would be the most significant thing to happen if a rope (or wire) tied the Earth and the Moon together?

    Results (673 votes), past polls