Jump to content

login


4hana

Recommended Posts

Hi

I get the following error when i load my login page.

Fatal error: Call to a member function query() on a non-object on line 35

Below is the code:

<?php

// database connect script.

require 'dbconnect.php';

if($logged_in == 1) {
die('You are already logged in, '.$_SESSION['username'].'.');
}


?>

<html>
<head>
<title>Login</title>
</head>
<body>
<?php

if (isset($_POST['submit'])) { // if form has been submitted


/* check they filled in what they were supposed to and authenticate */
if(!$_POST['username'] | !$_POST['s_password']) {
die('You did not fill in a required field.');
}

// authenticate.

if (!get_magic_quotes_gpc()) {
$_POST['username'] = addslashes($_POST['username']);
}

$check = $db_object->query("SELECT username, password FROM student WHERE username = '".$_POST['username']."'");

if (DB::isError($check)) {
die('That username does not exist in our database.');
}

$info = $check->fetchRow();

// check passwords match

$_POST['s_password'] = stripslashes($_POST['s_password']);
$info['password'] = stripslashes($info['password']);
$_POST['s_password'] = md5($_POST['s_password']);

if ($_POST['s_password'] != $info['password']) {
die('Incorrect password, please try again.');
}

// if we get here username and password are correct,
//register session variables and set last login time.



$_POST['uname'] = stripslashes($_POST['uname']);
$_SESSION['username'] = $_POST['username'];
$_SESSION['password'] = $_POST['s_password'];
$db_object->disconnect();
?>

<h1>Logged in</h1>
<p>Welcome back <?php echo $_SESSION['username']; ?>, you are logged in.</p>

<A HREF="http://igor.gold.ac.uk/~mas01lo/introduction.php"><center><h3>Relations</
h3></center></A>
<center><h3>Please Click relations to access the database relations index.</center></h3>
<br><hr>


<?php

} else { // if form hasnt been submitted

?>
<h1>Login</h1>
<form action="<?php echo $_SERVER['PHP_SELF']?>" method="post">
<table align="center" border="1" cellspacing="0" cellpadding="3">
<tr><td>Username:</td><td>
<input type="text" name="username" maxlength="40">
</td></tr>
<tr><td>Password:</td><td>
<input type="password" name="s_password" maxlength="50">
</td></tr>
<tr><td colspan="2" align="right">
<input type="submit" name="submit" value="Login">
</td></tr>
</table>
</form>
<?php
}
?>
</body>
</html>

Any help would be much appreciated.
Link to comment
https://forums.phpfreaks.com/topic/3822-login/
Share on other sites

replace [code]$check = $db_object->query("SELECT username, password FROM student WHERE username = '".$_POST['username']."'");[/code]

with

[code]$check = $db_object->mysql_query("SELECT username, password FROM student WHERE username = '".$_POST['username']."'");[/code]

I think your problem was u used query instead of mysql_query..
Link to comment
https://forums.phpfreaks.com/topic/3822-login/#findComment-13256
Share on other sites

Are the mysql libarys installed on the machine? because it sounds like a possible problem with that.. can you create a page called phpinfo.php and just put this code in

<?php
php_info();
?>

and then look to see what it says in MySQL area.. if it's not there then that means MySQL is not installed properly
Link to comment
https://forums.phpfreaks.com/topic/3822-login/#findComment-13277
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • 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.