0

What's wrong with this?

$db = new mysqli("DBserver","username","password","database");
if ($db->connect_error) {
    die('Connect Error ('.$db->connect_errno.')'.$db->connect_error);

class registerInvitedUser {
    protected $formdata = array();
    protected $connection;
    protected $execute;
    protected $results;
    protected $response_code = "";
    protected $response_msg = "";

    public function __construct($db)
    {
        $this->connection = $db;
    }

    $this->execute = $this->connection->query("UPDATE `users` SET acctstatus= 'A' WHERE email = '".$formdata["email"]."'");
    $this->results = $this->execute->affected_rows;
    if ($this->results == 1) {
       $echo "user updated!";
       $this->response_code = '0';
       $this->response_msg .= 'Your account has successfully been created!  You may now <A HREF="loginform.php">click here</A> to log in with your username and password';
    }
}

The query executes and successfully updates the database, but the affected_rows conditional isn't getting tripped, and I haven't been able to figure out why.

Thanks for any suggestions you guys might have!

3
Contributors
3
Replies
19
Views
2 Years
Discussion Span
Last Post by jay.barnes
0

Looks like something missing. All code should be wrapped up in methods, but you seem to have "naked code" within the class. This ain't allowed.

Seems your class is wrapped up n the conditional too. You sure this is right. Not really the way to code a class. Use an include yes by all means, but not the bare class in a conditional.

Edited by diafol

2

Try changing $this->results = $this->execute->affected_rows; into $this->results = $this->connection->affected_rows;

0

Thanks lps! That took care of it!

I'll get what you're suggesting, diafol - I was a little rushed when I put my post together, so I just had to make sure I included the part where I knew the script was failing.

Thank you both for your help!

This question has already been answered. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.