cookie til login

Tags:    php

Har fået svar på spørgsmålet, mange tak!



Indlæg senest redigeret d. 20.06.2011 08:45 af Bruger #3763
5 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 5 karma
Sorter efter stemmer Sorter efter dato
Du kan læse her: http://www.websitepublisher.net/article/php_cookies/

Men her er en hurtig forklaring på dansk:

opretcookie.php
Fold kodeboks ind/udKode 


checkcookie.php
Fold kodeboks ind/udKode 


destroy.php
Fold kodeboks ind/udKode 


[Redigeret d. 11/05-05 22:54:43 af Johan]



Atlantius - du kan læse alt omkring PHP og dets opbyning på http://www.php.net du skal blot søge på det du vil vide noget om,

-veile-
www.pointsoft.frac.dk




Warning: Cannot modify header information - headers already sent by (output started at /web/www/frac/users/atlantius/login-ok.php:42) in /web/www/frac/users/atlantius/login-ok.php on line 52

Warning: Cannot modify header information - headers already sent by (output started at /web/www/frac/users/atlantius/login-ok.php:42) in /web/www/frac/users/atlantius/login-ok.php on line 53

---------------------------------------------------------------------------
$bruger = $brugernavn;
$passwd = $password;

// du opretter cookien og lægger de to overstående variabler i cookien!
// Så sætter du cookiens holdbartid(dvs. den tid indtil cookien selv bliver slettet!) til 1 time = 3600 sek!

setcookie("Bruger", $bruger, time()+25920);
setcookie("Passwd", $passwd, time()+25920);
---------------------------------------------------------------------------

hvis i skal bruge det hele så er det

---------------------------------------------------------------------------


<?php


require("config.php");
$login = &$HTTP_POST_VARS['login'];


if(empty($login)) {
echo 'Denne side kræver login adgang';

}else{



$brugernavn = &$HTTP_POST_VARS['brugernavn'];
$password = &$HTTP_POST_VARS['password'];


if(empty($brugernavn) OR empty($password)) {
echo 'Et af felterne er tomme'; }
else {


mysql_connect($mysql_host, $mysql_user, $mysql_pw);
mysql_select_db($mysql_db);


$result_user = mysql_query("select brugernavn from users where brugernavn = '$brugernavn'")
or die (mysql_error());

$result_pw = mysql_query("select password from users where password = '$password'")
or die (mysql_error());


$array_user = mysql_fetch_array($result_user);
$array_pw = mysql_fetch_array($result_pw);

if($array_user['brugernavn'] == $brugernavn AND $array_pw['password'] == $password) {
echo 'korrekt password ';


$bruger = $brugernavn;
$passwd = $password;

// du opretter cookien og lægger de to overstående variabler i cookien!
// Så sætter du cookiens holdbartid(dvs. den tid indtil cookien selv bliver slettet!) til 1 time = 3600 sek!

setcookie("Bruger", $bruger, time()+25920);
setcookie("Passwd", $passwd, time()+25920);

}

else {
echo "forkert password";
}

}
}



?>






Indlæg senest redigeret d. 20.06.2011 08:47 af Bruger #3763
ja nu har jeg prøvede at lave en cookie opret men den virker ikke den kommer bare med det her some fejl

Warning: Cannot modify header information - headers already sent by (output started at /web/www/frac/users/atlantius/login-ok.php:42) in /web/www/frac/users/atlantius/login-ok.php on line 52

Warning: Cannot modify header information - headers already sent by (output started at /web/www/frac/users/atlantius/login-ok.php:42) in /web/www/frac/users/atlantius/login-ok.php on line 53


og det kode jeg har skrevet in er
---------------------------------------------------------------------------
$bruger = $brugernavn;
$passwd = $password;

// du opretter cookien og lægger de to overstående variabler i cookien!
// Så sætter du cookiens holdbartid(dvs. den tid indtil cookien selv bliver slettet!) til 1 time = 3600 sek!

setcookie("Bruger", $bruger, time()+25920);
setcookie("Passwd", $passwd, time()+25920);
---------------------------------------------------------------------------

hvis i skal bruge det hele så er det

---------------------------------------------------------------------------


<?php


require("config.php");
$login = &$HTTP_POST_VARS['login'];


if(empty($login)) {
echo 'Denne side kræver login adgang';

}else{



$brugernavn = &$HTTP_POST_VARS['brugernavn'];
$password = &$HTTP_POST_VARS['password'];


if(empty($brugernavn) OR empty($password)) {
echo 'Et af felterne er tomme'; }
else {


mysql_connect($mysql_host, $mysql_user, $mysql_pw);
mysql_select_db($mysql_db);


$result_user = mysql_query("select brugernavn from users where brugernavn = '$brugernavn'")
or die (mysql_error());

$result_pw = mysql_query("select password from users where password = '$password'")
or die (mysql_error());


$array_user = mysql_fetch_array($result_user);
$array_pw = mysql_fetch_array($result_pw);

if($array_user['brugernavn'] == $brugernavn AND $array_pw['password'] == $password) {
echo 'korrekt password ';


$bruger = $brugernavn;
$passwd = $password;

// du opretter cookien og lægger de to overstående variabler i cookien!
// Så sætter du cookiens holdbartid(dvs. den tid indtil cookien selv bliver slettet!) til 1 time = 3600 sek!

setcookie("Bruger", $bruger, time()+25920);
setcookie("Passwd", $passwd, time()+25920);

}

else {
echo "forkert password";
}

}
}



?>




Grunden til den siger:

Warning: Cannot modify header information - headers already sent by (output started at /web/www/frac/users/atlantius/login-ok.php:42) in /web/www/frac/users/atlantius/login-ok.php on line 52

er at man kun kan oprette cookies i header sektionen. Så det skal altså gøres ligeså snart man loader siden!

ChristofferB
christoffer@raiser.dk



Mange tak!



Indlæg senest redigeret d. 20.06.2011 08:46 af Bruger #3763
t