Jump to content

Login not directing to members area


sstoveld

Recommended Posts

hey guys, having lots of trouble with my school assignment. i need to build a fake dvd lending library for bob dylan. users must login to be able to rent a dvd. im just working on the login right now. when a user logs in, it is supposed to redirect them to members.php, but for some reason it is not. i also am getting plenty of warnings. users can login ok, but it just wont redirect.

 

here's the url: http://stovelddesign.com/INF216/final/index.php

a test login you can use is:

 

User Name: test

Pasword:test

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Insert Data From Text File</title>
<link href="styles/style.css" rel="stylesheet" type="text/css" media="screen" />
</head>

<body>

<div id="wrapper">
<div id="banner">
    	<h1><center><a href="index.php">Bob Dylan DVD Rental</a></center></h1>
    </div><!-- banner -->
    
  <div id="mainContent">
  	<h2>Lending Library</h2>
    
    
<?php

// This is a Bob Dylan Lending Library. I will update this part later //

// Connect to the server //
$dbcnx = @mysql_connect('*******', '*******', '*******') or die ('I cannot connect to the database because: ' .mysql_error());

// Connect to the database //
mysql_select_db('sstoveld', $dbcnx);
if (!@mysql_select_db('sstoveld'))
{
	exit ('<p>Error in query.'. mysql_error(). '<p>');
}
// END OF CONNECTION CODE //


//Checks if there is a login cookie
if(isset($_COOKIE['ID_my_site']))

//if there is, it logs you in and directes you to the members page
	{ 
		$username = $_COOKIE['ID_my_site']; 
		$pass = $_COOKIE['Key_my_site'];
		$check = mysql_query("SELECT * FROM users WHERE username = '$username'")or die(mysql_error());
		while($info = mysql_fetch_array( $check )) 
			{
				if ($pass != $info['password']) 
					{
					}
				else
					{
						header("Location: members.php");

					}
				}
			}

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

			// makes sure they filled it in
			if(!$_POST['username'] | !$_POST['pass']) 
				{
					die('You did not fill in a required field.');
				}
			// checks it against the database

			if (!get_magic_quotes_gpc()) 
				{
					$_POST['email'] = addslashes($_POST['email']);
				}
			$check = mysql_query("SELECT * FROM users WHERE username = '".$_POST['username']."'")or die(mysql_error());

			//Gives error if user dosen't exist
			$check2 = mysql_num_rows($check);
			if ($check2 == 0) 
				{
					die('That user does not exist in our database. <a href=register.php>Click Here to Register</a>');
				}
			while($info = mysql_fetch_array( $check )) 
				{
					$_POST['pass'] = stripslashes($_POST['pass']);
					$info['password'] = stripslashes($info['password']);
					$_POST['pass'] = sha1($_POST['pass']);

					//gives error if the password is wrong
					if ($_POST['pass'] != $info['password']) 
						{
							die('Incorrect password, please try again.');
						}
					else 
						{ 

							// if login is ok then we add a cookie 
							$_POST['username'] = stripslashes($_POST['username']); 
							$hour = time() + 3600; 
							setcookie(ID_my_site, $_POST['username'], $hour); 
							setcookie(Key_my_site, $_POST['pass'], $hour);	

							//then redirect them to the members area 
							header("Location: members.php"); 
						} 
				} 
			} 
		else 
			{	

				// if they are not logged in 
				?> 	
                    <form action="<?php echo $_SERVER['PHP_SELF']?>" method="post"> 
				<table border="0"> 
				<tr><td colspan=2><h1>Login</h1></td></tr> 
				<tr><td>Username:</td><td> 
				<input type="text" name="username" maxlength="40"> 
				</td></tr> 
				<tr><td>Password:</td><td> 
				<input type="password" name="pass" maxlength="50"> 
				</td></tr> 
				<tr><td colspan="2" align="right"> 
				<input type="submit" name="submit" value="Login"> 
				</td></tr> 
				</table> 
                    <p><a href="register.php">Register</a>
				</form> 
				<?php 
			} 

?>
    
  </div><!-- mainContent -->
    
    <div id="footer">
    	<p>Coded and designed by: <a href="mailto:[email protected]">Steve Stoveld</a></p>
    </div><!-- footer -->
</div><!-- wrapper -->

</body>
</html>

 

any and all help is appreciated, thank you

Link to comment
https://forums.phpfreaks.com/topic/156344-login-not-directing-to-members-area/
Share on other sites

cant use header() after content has been parsed...

 

either switch your core to verify account before outputing, or echoing meta redirects instead. :)

 

to tell you the truth, i have no idea what you just said :P

 

im rushing to get my final project done by sunday and found most of this code on about.com :P

 

do i even need to have it redirect to a new page? im not worried about any sort of security as im rushing through this and its only a class project. could i just have it all in the index.php?

 

EDIT: im also receiving these warning:

Warning: Cannot modify header information - headers already sent by (output started at /home/content/s/s/t/sstoveld/html/INF216/final/index.php:12) in /home/content/s/s/t/sstoveld/html/INF216/final/index.php on line 98

Warning: Cannot modify header information - headers already sent by (output started at /home/content/s/s/t/sstoveld/html/INF216/final/index.php:12) in /home/content/s/s/t/sstoveld/html/INF216/final/index.php on line 99

Warning: Cannot modify header information - headers already sent by (output started at /home/content/s/s/t/sstoveld/html/INF216/final/index.php:12) in /home/content/s/s/t/sstoveld/html/INF216/final/index.php on line 102

 

 

if yer login systen doesnt need a login successful page

than no, a redirect isnt needed on the login successful page

 

u can inlcude the members page (again, if nothing is outputted)

sumfin like

if(!$loggedin) die('Invalid Login');
include('members.php');

 

simple and effective

 

 

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.