Jump to content

[SOLVED] Simple login problem. HELP!


phpwiz

Recommended Posts

ok i have made this login script and it connects to the database and all but it says "Incorrect password!" when i KNOW i put in the correct password, here is the code.

 

login2.php

<?php

$username = $_POST['username'];
$password = md5($_POST['password']);

if ($username)
{

include "connect.php";

$query = mysql_query("SELECT * FROM users WHERE username='$username'");

$numrows = mysql_num_rows($query);

if ($numrows!=0)
{

while ($row = mysql_fetch_assoc($query))
{
		$dbusername = $row['username'];	
		$dbpassword = $row['password'];	
}

// check to see if they match
if ($username==$dbusername&&$password==$dbpassword)
{
	echo "You have sucessfully been logged in! <a href='mem.php'>Click here!</a>";
	$_SESSION['username']=$username;	
}
else
	die("Incorrect password!");

}
else
die("That user Does NOT exist");



}
else
die("Please enter a username and a password!");



?>

 

 

Link to comment
https://forums.phpfreaks.com/topic/168441-solved-simple-login-problem-help/
Share on other sites

while ($row = mysql_fetch_assoc($query))

  {

        $dbusername = $row['username']; 

        $dbpassword = $row['password']; 

  }

 

modify to:

 

list($dbusername, $dbpassword) = mysql_fetch_array($query, MYSQL_NUM);

while ($row = mysql_fetch_assoc($query))

  {

        $dbusername = $row['username']; 

        $dbpassword = $row['password']; 

  }

 

modify to:

 

list($dbusername, $dbpassword) = mysql_fetch_array($query, MYSQL_NUM);

 

Still says "Incorrect password!"

 

and i have even changed my password in the DB to make sure it is the rite password.

try this;

 

<?php
session_start();
if(isset($_POST['username']))
{
$username = $_POST['username'];
$password = md5($_POST['password']); //remove md5 if needed
include "connect.php";
$query = mysql_query("SELECT `password` FROM `users` WHERE `username`='$username' LIMIT 1");

$numrows = mysql_num_rows($query);
if ($numrows > 0)
{

	$row = mysql_fetch_assoc($query);
	$dbpassword = $row['password'];

	// check to see if they match
var_dump($password);
echo '<br />should equal<br />';
var_dump($dbpassword);
	if ($password==$dbpassword)
	{
		echo "You have sucessfully been logged in! <a href='mem.php'>Click here!</a>";
		$_SESSION['username']=$username;   
	}
	else
	{
		die("Incorrect password!");
	}

}
else
{
	die("That user Does NOT exist");
}
}
else
{
die("Please enter a username and a password!");
}
?>

try this;

 

<?php
session_start();
if(isset($_POST['username']))
{
$username = $_POST['username'];
$password = md5($_POST['password']); //remove md5 if needed
include "connect.php";
$query = mysql_query("SELECT `password` FROM `users` WHERE `username`='$username' LIMIT 1");

$numrows = mysql_num_rows($query);
if ($numrows > 0)
{

	$row = mysql_fetch_assoc($query);
	$dbpassword = $row['password'];

	// check to see if they match
var_dump($password);
echo '<br />should equal<br />';
var_dump($dbpassword);
	if ($password==$dbpassword)
	{
		echo "You have sucessfully been logged in! <a href='mem.php'>Click here!</a>";
		$_SESSION['username']=$username;   
	}
	else
	{
		die("Incorrect password!");
	}

}
else
{
	die("That user Does NOT exist");
}
}
else
{
die("Please enter a username and a password!");
}
?>

 

this is what it echo'd out

string(32) "5f4dcc3b5aa765d61d8327deb882cf99" 
should equal
string( "password" Incorrect password!

 

 

 

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.