Jump to content

[SOLVED] Using $_POST in OOP


Cobby

Recommended Posts

Hello all,

 

I am coding a CMS using OOP (Object Orientated Programming). I have just started, and I am half way through the user login/authentication area.

 

How do I get data from a HTML form in a class?

 

I have a regular HTML some like:

<form action="post" method="checklogin.php">
<input type="text" name="username" />
<input type="text" name="password" />
</form>

 

 

But thats all fine. Here is what I have done so far on checklogin.php:

 

<?

require_once ('../includes/dbconnect.php');

$dbconnect = new dbconnect();

class login
{

    var $username = $_POST['username'];
    var $password = $_POST['password'];

    function login()
    {
        if (isset($_POST['submit']))
        {

        }
    }
}

?>

 

I get a parse error on line 10.

Line 7 is: var $username = $_POST['username'];

 

If I change them both to a regular srting like

 

var $username = "Cobby";
var $password= "Cobby's Password";

 

It works fine, so I guess I am doing something when getting the data from the HTML form.

 

How do I get data from a HTML form in a class?

 

Cheers,

Cobby

 

 

 

Link to comment
Share on other sites

Thanks for the reply... :)

 

But how do I call on that from within another function?

What would I do if I wanted to simply echo the username (from within a new function, but same class)?

 

It seams like such I simple question, but I just cant put my finger on it? ???

 

OOPS (no I dont mean object orientated), forgot about the OOP Child Board, Moderators feel free to move my thread.

Link to comment
Share on other sites

Yes but you store them in the "this->" varibles?

 

Sorry, you've lost me.

 

class login{

 

    var $username = "";

    var $password = "";

 

    function login($username, $password){

   

    if(isset($_POST['submit'])){

$this->username = $username;

$this->password = $password;

}

 

 

    }

   

    function querydb(){

 

$login->login($_POST['username']); //just doing username for the time being, ill add password when this gets working.

echo $login;

 

}

}

Link to comment
Share on other sites

I'm not the pro in OOP but I think you just need to do the same thing again.

 

class login{

 

    var $username = "";

    var $password = "";

 

    function login($username, $password, $submit){

     

      if(isset($this->submit)){

      $this->username = $username;

      $this->password = $password;

      }

 

     

    }

 

    function querydb($username){

 

  $login->login($this->username); //just doing username for the time being, ill add password when this gets working.

  echo $login;

 

  }

}

Link to comment
Share on other sites

Sounds good, will do :)

 

But just for the sake of learning, how would I have done it within the same class?

 

im not too sure if it is possible

 

but for kicks try

 

class test{

function test(){

print_r($_POST);

}}

 

then on a page that has post varialbes do

 

$x = new test(); and see what happens

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.