Re: Re: Authentication fails - problem line found

From: Date: Fri, 04 Mar 2005 19:38:49 +0000
Subject: Re: Re: Authentication fails - problem line found
References: 1 2 3 4 5 6 7 8 9 10  Groups: php.general 
Request: Send a blank email to php-general+get-210026@lists.php.net to get a copy of this message
On 3/4/2005 2:02 PM Richard Lynch wrote:
John Swartzentruber wrote:
I stripped down my original script until it started receiving POST data, then I kept modifying it until I figured out where the problem was. I found it, but I'm still as clueless as every. To summarize: I have a form that posts to the same script that contains the form. In its original state, when the script is called after I submit the form data, the $_POST[] data is completely empty and the _SERVER variable that indicates the type of data is set to "GET". In the script is the following code: if (IsSet($_POST["action"])) {
//    $action = $_POST["action"];
} else {
    $action = $_GET["action"];
} Normally the second line is not commented. When I comment out that line, then the $_POST array has all of the data I would expect it to. When it is not commented, then it does not work. Just to make sure that I am really confused, this bit of code is *after* the call to var_dump($_POST), but *before* the code that creates the form. Does anyone have any ideas about why setting this variable has such a large and seemingly unrelated affect?
WILD GUESS: Somewhere in your form and/or the logic, you are sending GET data for $action as well as POST data for $action, and you are confusing the two. Show us your stripped-down but still-broken code.
Thanks for sticking with me. I tried stripping it down again, but then the stripped down version worked (even with the problem line). That means I need to take a couple more passes at it and figure out what else is working with this line that causes the problem. I did determine that it is not the name of the $action variable or the "action" POST value. If I manually set $action to "login", it causes the problem, but if I set it to "loginx", then the post values come through correctly. I didn't write this script, and I'm seeing the same problem in phpMyAdmin, so I don't think it is a coding problem unless it is an incompatibility between php4 and php5. I still need to track it down further. I'll let you know what I find.

« previous php.general (#210026) next »