/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Sesions
Fra : Thor


Dato : 03-01-03 23:25

Findes der en måde at gemme noget info på serveren,
F.eks. hvis jeg nu laver en login side, så skal vær side man vil komme ind
på, lige først se om man er logget ind.
Dvs. Klienten udføre et login script, hvorefter serveren, gemmer et, info om
at klienten har logget ind. så når klienten Ser på de forskellige sider,
skal serveren først lige se om den nu er logget ind.

håber i forstår



 
 
Niels Andersen (03-01-2003)
Kommentar
Fra : Niels Andersen


Dato : 03-01-03 23:42

Thor wrote in <3e160dc9$0$47057$edfadb0f@dtext02.news.tele.dk>:
> Findes der en måde at gemme noget info på serveren,
[...]
> så når klienten Ser på de forskellige
> sider, skal serveren først lige se om den nu er logget ind.

Så skal du kigge på sessioner.

Jeg har ledt lidt efter noget dansk til dig, og fandt disse:
Sessions i PHP: http://www.udvikleren.dk/show_article.php?id=88
Brugersystem i PHP/MySQL: http://www.udvikleren.dk/show_article.php?id=81
Jeg ved dog ikke hvor gode de er, jeg har kun læst overskrifterne.

Manualen: http://php.net/session

--
Mvh.

Niels Andersen
(la nels. anersyn.)

denver (03-01-2003)
Kommentar
Fra : denver


Dato : 03-01-03 23:49


"Thor" <thor1986@post.cybercity.dk> wrote in message
news:3e160dc9$0$47057$edfadb0f@dtext02.news.tele.dk...
> Findes der en måde at gemme noget info på serveren,
> F.eks. hvis jeg nu laver en login side, så skal vær side man vil komme ind
> på, lige først se om man er logget ind.
> Dvs. Klienten udføre et login script, hvorefter serveren, gemmer et, info
om
> at klienten har logget ind. så når klienten Ser på de forskellige sider,
> skal serveren først lige se om den nu er logget ind.
>
> håber i forstår
>
>

Du kan ved at sætte session_id hos klienten og i en database på serveren,
altid se om de 2 session_id stemmer over ens. Og derved verificere om en
bruger er logget ind.

/denver



Lars Dybdahl (04-01-2003)
Kommentar
Fra : Lars Dybdahl


Dato : 04-01-03 00:30

De fleste gemmer sessionsinfo i en database, f.eks. MySQL. På den måde kan
du også have flere webservere, der tilgår de samme sessionsdata på den
samme MySQL server.

Lars.


--
Dybdahl Engineering
http://dybdahl.dk/

Thor (04-01-2003)
Kommentar
Fra : Thor


Dato : 04-01-03 01:01

har fulgt denne side http://www.udvikleren.dk/show_article.php?id=88
Men har så prøvet at lave eksempel2 men får disse fejl

Warning: session_start() [function.session-start]: Cannot send session
cookie - headers already sent by (output started at c:\programmer\apache
group\apache\htdocs\test1\test1.php:7) in c:\programmer\apache
group\apache\htdocs\test1\test1.php on line 8

Warning: session_start() [function.session-start]: Cannot send session cache
limiter - headers already sent (output started at c:\programmer\apache
group\apache\htdocs\test1\test1.php:7) in c:\programmer\apache
group\apache\htdocs\test1\test1.php on line 8
Gå nu til Side2.php


Hvad kan der være galt, har bare kopieret koden, fra eksemplet, og sat det
ind i en side



Jesper Brunholm (04-01-2003)
Kommentar
Fra : Jesper Brunholm


Dato : 04-01-03 09:53

Thor wrote:
> har fulgt denne side http://www.udvikleren.dk/show_article.php?id=88
> Men har så prøvet at lave eksempel2 men får disse fejl
>
> Warning: session_start() [function.session-start]: Cannot send session
> cookie - headers already sent by (output started at c:\programmer\apache
> group\apache\htdocs\test1\test1.php:7) in c:\programmer\apache
> group\apache\htdocs\test1\test1.php on line 8

> Hvad kan der være galt, har bare kopieret koden, fra eksemplet, og sat det
> ind i en side

måske er der outputtet et mellemrum inden din php-kode begynder?

_____________________________sidestart____________________
<?php
^^ mellemrummet i første tegn på linie 1 er nok til at serveren har fået
"output". Når du derimod har åbnet php-afviklingen kan du lave alle de
mellemrum du vil, men må stadig ikke echo/print'e før du har sat din
session...

mvh

Jesper Brunholm



Ukendt (04-01-2003)
Kommentar
Fra : Ukendt


Dato : 04-01-03 14:09

On Sat, 4 Jan 2003 01:01:29 +0100, "Thor" <thor1986@post.cybercity.dk>
wrote:

>har fulgt denne side http://www.udvikleren.dk/show_article.php?id=88
>Men har så prøvet at lave eksempel2 men får disse fejl
>
>Warning: session_start() [function.session-start]: Cannot send session
>cookie - headers already sent by (output started at c:\programmer\apache
>group\apache\htdocs\test1\test1.php:7) in c:\programmer\apache
>group\apache\htdocs\test1\test1.php on line 8
>
>Warning: session_start() [function.session-start]: Cannot send session cache
>limiter - headers already sent (output started at c:\programmer\apache
>group\apache\htdocs\test1\test1.php:7) in c:\programmer\apache
>group\apache\htdocs\test1\test1.php on line 8
>Gå nu til Side2.php
>
>
>Hvad kan der være galt, har bare kopieret koden, fra eksemplet, og sat det
>ind i en side
>

Nu kan jeg ikke liiiige huske om man må sende fx en SET_COOKIE() FØR
session_start()

Men måske er det, det ?

Thor (04-01-2003)
Kommentar
Fra : Thor


Dato : 04-01-03 14:19

<har fulgt denne side http://www.udvikleren.dk/show_article.php?id=88
<Men har så prøvet at lave eksempel2 men får disse fejl

har kopieret direkte fra selve, eksemplet, så skulle ikke tro der var nogle
fejl der. har prøvet begge dele, som har været i emnet intil nu, men intet
har virket.




Tinky Winky (04-01-2003)
Kommentar
Fra : Tinky Winky


Dato : 04-01-03 14:37

> Men har så prøvet at lave eksempel2 men får disse fejl
>
> Warning: session_start() [function.session-start]: Cannot send session
> cookie - headers already sent by (output started at c:\programmer\apache
> group\apache\htdocs\test1\test1.php:7) in c:\programmer\apache
> group\apache\htdocs\test1\test1.php on line 8

I linje 7 sender du noget output. Kalder du echo eller print? Eller har du
escapet fra php, dvs. "?>" og så er der et mellemrum eller andet tegn? Lad
os evt. se koden, det er nemmere.

> Hvad kan der være galt, har bare kopieret koden, fra eksemplet, og sat det
> ind i en side

Der må ikke blive sendt noget output før session_start() eller din cookie
initialisering. Lad os sige at du havde et fungerende script der starter
sådan:
----- filstart ----
<?
session_start....
.....
.......
---- filslut----

Hvis så du indsatte en tom linje i starten af filen...
----- filstart ----

<?
session_start....
.....
.......
---- filslut----
Ville du sende et linjeskift inden session_start, og du ville få en lignende
fejl.



Thor (04-01-2003)
Kommentar
Fra : Thor


Dato : 04-01-03 15:11

> I linje 7 sender du noget output. Kalder du echo eller print? Eller har du
> escapet fra php, dvs. "?>" og så er der et mellemrum eller andet tegn? Lad
> os evt. se koden, det er nemmere.

koden
Side 1

<html>
<head>
<title>Untitled Document</title>
</head>
<body>
<?php
set_cookie();
session_start();
$_SESSION['var'] = "Session";
?>
<a href="Side2.php">Gå nu til Side2.php</a>

</body>
</html>

Side 2

<html>
<head>
<title>Untitled Document</title>
</head>

<body>
<?php
session_start(); //Starter session
echo $_SESSION['var']; //Vil skrive, Session, på skærmen. Brug
$HTTP_SESSION_VARS i ældre versioner end 4.1.0.
?>

</body>
</html>



Michael Foged (04-01-2003)
Kommentar
Fra : Michael Foged


Dato : 04-01-03 16:07

On Sat, 04 Jan 2003 15:11:29 +0100, Thor wrote:

>>
> <html>

Her sender du netop output inden dæ sætter session eller cookies


mvh
Michael

Thor (04-01-2003)
Kommentar
Fra : Thor


Dato : 04-01-03 16:23


> Her sender du netop output inden dæ sætter session eller cookies

Så virker det,så tror jeg at jeg har styr på alt hvad jeg skal have styr på.

Mange tak alle sammen



Søg
Reklame
Statistik
Spørgsmål : 177560
Tips : 31968
Nyheder : 719565
Indlæg : 6408946
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste