Jump to content

[SOLVED] POST variables apparently not working


Nilesta

Recommended Posts

Odd problem.  I'm making ye olde login page.  If I use GET, it works, if I use POST, it doesn't.  Here's the code as it is, right now:

 

include 'auth.php';

if (isset($HTTP_POST_VARS['name']) && isset($HTTP_POST_VARS['pass'])){
$UserName = $HTTP_POST_VARS['name'];
$Password = $HTTP_POST_VARS['pass'];
$Result = Login($UserName, $Password);
}else{
$Result = 4;
};

 

and the page:

 

<form method="post" action="login.php">
User Name: <input type="text" name="name">
<BR>
Password: <input type="password" name="pass">
<BR>
<input type="submit" value="Login"></form>

 

I'm using PHP 5, SQL server 2005, Windows XP.  Originally I was using $_POST, instead of the http_post_vars, but I was getting desperate.  It still doesn't work.

 

If I take out the method=post, and switch the code to use $_GET, it will work, and log me in.  As it is, now, or with using $_POST, it will return result 4 (as if I hadn't typed anything into the field).  It doesn't throw an error, it just doesn't think I entered anything into the form.

 

I've looked all over for an answer, but just can't find anyone even having the same issue, or mentioning the same issue.  I even tried switching register_globals to on and resetting IIS.  Still not working.  Really starting to drive me bonkers.

 

Help?

Link to comment
Share on other sites

Odd problem.  I'm making ye olde login page.  If I use GET, it works, if I use POST, it doesn't.  Here's the code as it is, right now:

 

};

 

and the page:

 

<form method="post" action="login.php">

 

Perhaps remove the semi-colon after the closing curly brace... and then also add

enctype="multipart/form-data"

to the form tags.

 

Hope this helps!

Link to comment
Share on other sites

n~ link=topic=162501.msg711784#msg711784 date=1191825113]

include 'auth.php';

if (isset($_POST['name']) && isset($_POST['pass'])){
$UserName = $_POST['name'];
$Password = $_POST['pass'];
$Result = Login($UserName, $Password);
}else{
$Result = 4;
};

 

As I mentioned in my post, $_POST was the first thing I tried.  It doesn't work.

Link to comment
Share on other sites

I tested this code, and the var_dump printed everything out just nicely for me (using the following code as everything on login.php):

 

<?php
if (isset($_POST['name']) && isset($_POST['pass'])){
$UserName = $_POST['name'];
$Password = $_POST['pass'];
$Result = var_dump($UserName, $Password);
}else{
$Result = 4;
};
?>

<form method="post" action="login.php">
User Name: <input type="text" name="name">
<BR>
Password: <input type="password" name="pass">
<BR>
<input type="submit" value="Login"></form>

Link to comment
Share on other sites

n~ link=topic=162501.msg711788#msg711788 date=1191825802]

try this

 

include 'auth.php';

if($_SERVER['REQUEST_METHOD'] == 'POST')
{
$UserName = $_POST['name'];
$Password = $_POST['pass'];
$Result = Login($UserName, $Password);
}else{
$Result = 4;
};

 

This actually worked.  I don't know why, but it did.  Thanks!

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.