sslug-teknik team mailing list archive
-
sslug-teknik team
-
Mailing list archive
-
Message #26152
Re: Apache spørgsmål
Jesper Hess Nielsen wrote:
> Det er meget nemt hvis man bruger PHP4 sessions. Når en bruger er logget
> ind, initialiserer du din session og registrerer en variable f.eks. ved navn
> $logged_in.
> I toppen af hver side indsætter du så følgende :
>
> ----
>
> session_start();
> if (!isset($logged_in))
> header("Location:
> http://her_bliver_brugeren_smidt_hen_hvis_han_ikke_er_logget_ind.php");
>
> ----
>
> På den måde, bliver brugeren, hvis $logged_in ikke er sat i hans session,
> smidt tilbage til en eller anden side.
Hej Jesper
jeg har nu prøvet at implementere sessions (og får heller ingen fejl fra
php), men det virker stadig ikke på den måde jeg gerne vil have det til!
En bruger kan stadig gå ind direkte til hans adresse uden at skulle
igennem authorisationen!
Min login side, består af en form, som sender resultaterne videre til
auth.php:
<?php
session_start();
mysql_connect("localhost", "BRUGER", "PASSWORD")
or die ("Unable to connect to database.");
mysql_select_db("Auth")
or die ("Unable to select database.");
$result = mysql_query("SELECT userid FROM users WHERE userid='$userid'
AND password='$password'");
$num = mysql_numrows($result);
if ($num != "0") {
$verified_user = $userid;
session_register("$verified_user");
Header("Location: http://www.thematrixnet.dk/$userid");
}
else {
Header("Location: authfailed.html");
}
?>
Brugerenes sider ser ud som følger:
<html>
<head>
<title>test</title>
<?php
session_start();
if (!isset($verified_user))
header("Location:
http://www.thematrixnet.dk/authtest/authfailed.html");
?>
<P>
Test
Hvis jeg går ind på brugerens adresse (uden at skrive index.php) kommer
siden rigtig frem.
Skriver jeg derimod BRUGERNAVN/index.php kommer disse fejl frem:
Warning: Cannot send session cookie - headers already sent by (output
started at /www/htdocs/anders/index.php:4) in
/www/htdocs/anders/index.php on line 5
Warning: Cannot send session cache limiter - headers already sent by
(output started at /www/htdocs/anders/index.php:4) in
/www/htdocs/anders/index.php on line 5
Warning: Cannot add header information - headers already sent by (output
started at /www/htdocs/anders/index.php:4) in
/www/htdocs/anders/index.php on line 7
Test
Nogen ide om hvad der er galt?
Anders
Follow ups
References