Avatar billede steffendax Nybegynder
09. marts 2009 - 16:56 Der er 7 kommentarer

php login"fejl"

ok her kommer lige en lang kode fra min login.php ..:)

jeg bliver ikke sendt videre til min members.php side efter jeg trykker login, vil bare høre hva jeg har gjort galt.. for hvis jeg efter login selv går ind på siden members.php kommer jeg ind som jeg skal, så siden virker fint med cookies osv :)

på forhånd tak.


<?php
include("connect.php"); //Inkluder filen der connecter til min database

//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=add.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><p>Username:</p></td><td>
<input type="text" name="username" maxlength="40" size="20" style="font-family: Verdana; font-size: 8pt">
</td></tr>
<tr><td><p>Password:</p></td><td>
<input type="password" name="pass" maxlength="50" size="20" style="font-family: Verdana; font-size: 8pt">
</td></tr>
<tr><td colspan="2" align="right">
<input type="submit" name="submit" value="Login" style="font-family: Verdana; font-size: 8pt; font-weight: bold">
</td></tr>
</table>
</form>
<?php
}

?>
Avatar billede zynzz Praktikant
09. marts 2009 - 19:08 #1
Hvad er det lige du bruger den løkke til ??!
Avatar billede steffendax Nybegynder
09. marts 2009 - 20:34 #2
skal siges jeg er rimelig ny, så jeg har "lånt" koden :)

men den skal gå fra en login-side til en side kaldet members.php, som også virker helt fint, men den går bare ikke videre efter jeg trykker login...
Avatar billede majbom Novice
10. marts 2009 - 08:44 #3
sker der intet når du trykker login, eller gør den noget andet end det du gerne vil have?
Avatar billede steffendax Nybegynder
10. marts 2009 - 17:38 #4
der kommer en "blank" side.. der står stadig http://blabla.dk/login.php oppe i adressen... hvis jeg så selv går ind på min http://blabla.dk/members.php virker den helt fint, men den skal jo helst selv gå videre fra login-siden :)
Avatar billede majbom Novice
11. marts 2009 - 07:17 #5
jeg synes ikke umiddelbart at jeg kan finde nole fejl.

er det uanset om der er en cookie, eller om man logger ind?
Avatar billede dkfire Nybegynder
11. marts 2009 - 13:50 #6
Hvad er en "blank" side ?
Avatar billede majbom Novice
04. november 2010 - 11:25 #7
lukketid?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB