Avatar billede kegud Nybegynder
17. februar 2003 - 01:24 Der er 8 kommentarer og
1 løsning

session login

hej, mit kode:

-login.php-
<form method="post" action="login.ok.php">
Username: <input type="text" name="navn"><br>
Password: <input type="password" name="password"><br>
<input type="submit" value="submit">

-login.ok.php-

<?
if ($navn == "test" && $password == "test2"){
session_start();
session_register ("navn");
session_register ("password");
?>
<html>
<head>
</head>
<body>
<table cellpadding="0" cellspacing="0" class="content" width="260px"><tr><td>
<h4>Login ok!</h4>
Du er logget ind.
</td></tr></table>
</body>
</html>
<?
} else {
?>
Prøv igen..<br><br>
<?
}
?>

-newz.php-
<?
session_start();
if ($navn & $password) {
?>
<html>
<body>
hej
</body>
</html>

<?
} else {
?>
Prøv igen..<br><br>
<?
}
?>

det skal siges jeg arbejder med iframe, så jeg har linket det hele sammen.

Jeg kan godt logge ind, der er ingen problemer der, men når jeg så trykker på linket til newz.php så siger den bare "prøv igen", hvad kan problemet være?
Avatar billede sukos Juniormester
17. februar 2003 - 01:32 #1
Prøv at kikke lidt på sessions:
http://dk.php.net/manual/en/ref.session.php

Måden du sætter din session på er ikke korrekt, og måden du tjekker din var på er heller ikke for go' :O)
Avatar billede sukos Juniormester
17. februar 2003 - 02:13 #2
Avatar billede schaefner Juniormester
17. februar 2003 - 06:43 #3
Et lille eksempel:

<?
// Tjek oplysninger og log brugeren ind hvis alt er ok
session_start();
if ($_POST['navn'] == "test" && $_POST['password'] == "test2") {
    $_SESSION['navn'] = $_POST['navn'];
    $_SESSION['password'] = $_POST['password'];
}
?>

<?
// Tjek om brugeren er logget ind
session_start();
if (isset($_SESSION['navn'], $_SESSION['password'])) {
?>

Det er utestet, men burde virke
Avatar billede tefcke Nybegynder
17. februar 2003 - 14:48 #4
I news.php har du en if-sætning som siger : if ($navn & $password).
Mig bekendt betyder & bit-vis AND, tror der skulle have stået && som bare betyder AND. Tror at det er der som er en fejl!

Nok om det, jeg har 1 funktioner som jeg bruger når jeg kører med sessions variable. Tænkte at den kunne komme andre til brug!

(1) -
/* Function to check if a user is logged in */
function is_logged_in()
{
  global $SESSION_USERNAME, $SESSION_PASSWORD;
  if (isset($SESSION_USERNAME) && isset($SESSION_PASSWORD)) {
    return TRUE;
  } else {
    return FALSE;
  }
}

-- Når jeg så har en region i min kode som kræver at man er logget ind, så knalder jeg den bare ind i en if-blok :
if(is_logged_in()) {
  /* Brugeren er logget ind og kan forstætte */
} else {
  /* Tag lige og log ind mester */
}
Avatar billede kegud Nybegynder
20. februar 2003 - 13:48 #5
schaefner hvis du lige ville smide et svar, så.
Avatar billede schaefner Juniormester
22. februar 2003 - 00:06 #6
Jamen det gør jeg da så ;)
Avatar billede schaefner Juniormester
24. februar 2003 - 17:39 #7
lukketid så? ;)
Avatar billede schaefner Juniormester
26. februar 2003 - 20:50 #8
.
Avatar billede kegud Nybegynder
26. februar 2003 - 21:00 #9
der ;)
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