Jump to content

login

- - - - -

  • Please log in to reply
7 replies to this topic

#1
kirigwajoe

kirigwajoe

    Newbie

  • Members
  • Pip
  • 9 posts
I have two files one to register and the other to login.

I have a database "child" with table "members" which has column names "mid", "username", "password"

the files are registermember.php which works and adds a new member with username and password to the database.

The problem is with loginmember.php which displays this error warning.

Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\CHILD\loginmember.php:11) in C:\wamp\www\CHILD\loginmember.php on line 132

Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\CHILD\loginmember.php:11) in C:\wamp\www\CHILD\loginmember.php on line 134

Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\CHILD\loginmember.php:11) in C:\wamp\www\CHILD\loginmember.php on line 140


The line 132 and 134 have this code and i do not understand what ID_my_site
and Key_my_site mean because i am working on a laptop and not connected to the web.

 setcookie(ID_my_site, $_POST['username'], $hour); 

setcookie(Key_my_site, $_POST['pass'], $hour);	 

The line 140 has this code:
header("Location: members.php"); 

yet i do not know what members.php looks like!

The loginmember.php code:

<?php 


 // Connects to your Database 


$server = 'localhost';

$dbuser="root";

$dbpasswd="";

// Make a MySQL Connection

mysql_connect($server , $dbuser , $dbpasswd) or die(mysql_error());

mysql_select_db("child") or die(mysql_error());



 //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 members 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 members 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=registermember.php>Click Here to Register</a>');


 				}


 while($info = mysql_fetch_array( $check )) 	


 {


 $_POST['pass'] = stripslashes($_POST['pass']);


 	$info['password'] = stripslashes($info['password']);


 	$_POST['pass'] = md5($_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> 


 </form> 


 <?php 


 } 


 


 ?> 



#2
Alexander

Alexander

    It's Science!

  • Moderators
  • 4,124 posts
  • Location:Vancouver, Eh! Cleverness: 200
As you are relying on definitions outside of the page, I assume this page is being included by another. The parent page(s) cannot print or echo anything to the screen before those HTTP headers are sent (setcookie()/header()), you must prevent any output including a byte order mark if the page is encoded in UTF8.
Be sure to read the updated FAQ! || Health is achieved through the same 10,000 steps.
If a suggested code/method fails, informing us is less important than telling us why or what errors occurred.

#3
kirigwajoe

kirigwajoe

    Newbie

  • Members
  • Pip
  • 9 posts
I do not get exactly wht you mean so please help me by showing me from my code. Hope i am not going to far.

#4
Alexander

Alexander

    It's Science!

  • Moderators
  • 4,124 posts
  • Location:Vancouver, Eh! Cleverness: 200
You tell me that you do not know what ID_my_site is, is this because another page is including loginmember.php?

Be sure to read the updated FAQ! || Health is achieved through the same 10,000 steps.
If a suggested code/method fails, informing us is less important than telling us why or what errors occurred.

#5
kirigwajoe

kirigwajoe

    Newbie

  • Members
  • Pip
  • 9 posts
I am not including loginmember on any other page. hope i i get what u mean.

So what is the possible way forward Alexander?

#6
kirigwajoe

kirigwajoe

    Newbie

  • Members
  • Pip
  • 9 posts
May be you provide me with a simpler log in page.

if you do not mind.

#7
Smilex

Smilex

    Learning Programmer

  • Members
  • PipPipPip
  • 84 posts
Just remember that both of these functions need to be called before your <html> tag, I believe if that is not done, you get the same error that you are getting.

PHP: header - Manual
PHP: setcookie - Manual

#8
gon1387

gon1387

    Newbie

  • Members
  • PipPip
  • 17 posts
I got this in the PHP tutorial section, this was created by amrosama. AUTHENTICATION TUTORIAL
Hope this helps. :)




1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users