Permalänk

jag har refreshat och startat om både server och browser ett antal gånger.. så det är inte det.

i databasen så är sessionen registrerad och datum, tid är rätt.

Behöver man ändra något i php.ini för att session ska fungera rätt? vilka inställnigar har du där angående sessions ?

<?php $db = mysql_connect("localhost", "admin", "*******"); mysql_select_db("base", $db); $uid = $tangologin; $sql = "select count(loginuid), userid from sessions where loginuid = '$uid' group by userid"; $res = mysql_query($sql); $k = mysql_fetch_array($res); if ($k[0] == 0) die("du är inte inloggad"); $sql = "select * from users where uid = '$k[1]'"; $res = mysql_query($sql) or die(mysql_error()); $user = mysql_fetch_array($res); $PHP_AUTH_USER = $user[0]; mysql_close($db); ?> <!doctype html public "-//W3C//DTD HTML 4.0 //EN"> <html> <head> <title>Title here!</title> </head> <body> det funkar ju visst </body> </html>

ett exempel på hur min skyddade sida ser ut. Ska detta funka ?

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av FreakaliS
jag har refreshat och startat om både server och browser ett antal gånger.. så det är inte det.

i databasen så är sessionen registrerad och datum, tid är rätt.

Behöver man ändra något i php.ini för att session ska fungera rätt? vilka inställnigar har du där angående sessions ?

<?php $db = mysql_connect("localhost", "admin", "*******"); mysql_select_db("base", $db); $uid = $tangologin; $sql = "select count(loginuid), userid from sessions where loginuid = '$uid' group by userid"; $res = mysql_query($sql); $k = mysql_fetch_array($res); if ($k[0] == 0) die("du är inte inloggad"); $sql = "select * from users where uid = '$k[1]'"; $res = mysql_query($sql) or die(mysql_error()); $user = mysql_fetch_array($res); $PHP_AUTH_USER = $user[0]; mysql_close($db); ?> <!doctype html public "-//W3C//DTD HTML 4.0 //EN"> <html> <head> <title>Title here!</title> </head> <body> det funkar ju visst </body> </html>

ett exempel på hur min skyddade sida ser ut. Ska detta funka ?

det beror på, men det bör funka. i din php.ini ska du ha register_globals igång men det har du gissar jag. det som jag kallar session (jusst nu) är bara en post i en sql tabell, scriptet använder cookies.

pova att använda denna koden istället och se vad som skrivs ut.

<?php $db = mysql_connect("localhost", "admin", "*******"); mysql_select_db("base", $db); $uid = $tangologin; echo "uid: $uid <br>"; $sql = "select count(loginuid), userid from sessions where loginuid = '$uid' group by userid"; $res = mysql_query($sql); $k = mysql_fetch_array($res); echo "numer of matches: $k[0]<br>userid: $k[1]<br>"; if ($k[0] == 0) die("du är inte inloggad"); $sql = "select * from users where uid = '$k[1]'"; $res = mysql_query($sql) or die(mysql_error()); $user = mysql_fetch_array($res); $PHP_AUTH_USER = $user[0]; mysql_close($db); ?>

vad händer?

Visa signatur

Har du nhGPS? kolla detta.
Fotograferar lite ibland när jag har tid. Annars jobbar jag som fotograf.

Permalänk

Så står det på den filen som man kommer till när man loggar in

uid: 6a4013c66e132e1bbeb8d85faf27458f
numer of matches: 1
userid: 5bac1335c2754a2cfcc0c857ad4270f0

Står det på den filen som är länkad ifrån den filen som man kommer till när man loggar in:

uid:
numer of matches:
userid:
du är inte inloggad

Den verkar inte skicka de variablerna vidare eller? antar det är något som man ska ändra i php.ini ? har standard inställningar där nu.

Permalänk
Medlem

det som händer är att sidan inte hittar rätt cookie. jag är inget proffs på cookies och det där men jag skulle tro att det beror på vilken domän/sida cookien är reggad på.

http://www.php.net/manual/en/function.setcookie.php

setcookie ("tangologin", $cookieuid, time()+3600, "/sökväg/", "dindomän.com") or die("Unable to set cookie! Login failed.");

prova att använda den i loginscriptet istället för

setcookie("tangologin", $cookieuid) or die("Unable to set cookie! Login failed.");

ingen aning om det funkar men det är ju värt ett försök.

Visa signatur

Har du nhGPS? kolla detta.
Fotograferar lite ibland när jag har tid. Annars jobbar jag som fotograf.

Permalänk

det funkade inte bättre =/

setcookie ("tangologin", $cookieuid, time()+3600, "c:/", "freakalis.com") or die("Unable to set cookie! Login failed.");

så skrev jag.

Då stod det även på inloggningssidan att jag jag inte vara inloggad.

skulle du vilja maila din php.ini till mig ? så jag kan se om några inställningar där fungerar..
Chrille_j@rocketmail.com

Permalänk
Medlem

Okej, nu har jag fått igång det så att det funkar.

Jag har dock en fråga till, en snabb en. Jag skulle säkert kunna lista ut det själv om jag hade tid att testa (sitter på regementet nu och kör vnc med min dator, inte så omtyckt när jag sitter här läånge ).

Frågan är hur man loggar ut med en enda knapptryckning?

Tackar för all hjälp jag fått hittils, jag börjar få grepp om mer saker nu när jag kollat igenom dessa exempel.

Visa signatur

Har bytt namn från: nulleman ~ Blogg: http://skorpion.se
MacBook Pro: 15.4' ~ 1.83GHz ~ 1512MB RAM ~ 80GB HDD
Medlem i signaturen blodtörstiga Appleanvändare

Permalänk
Medlem

FreakaliS: Du kan ta och kolla min lösning på detta problem, det kanske hjälper dig med ditt problem

http://sweclockers.com/forum/showthread.php?threadid=92859

Visa signatur

Har bytt namn från: nulleman ~ Blogg: http://skorpion.se
MacBook Pro: 15.4' ~ 1.83GHz ~ 1512MB RAM ~ 80GB HDD
Medlem i signaturen blodtörstiga Appleanvändare

Permalänk
Medlem

<?php if (isset($submit) && isset($tangologin)) { if ($tangologin == "") die("already logged out!"); $db = mysql_connect("localhost", "root", "*****"); mysql_select_db("pcgamer", $db); $uid = $tangologin; $sql = "delete from sessions where loginuid = '$uid'"; mysql_query($sql) or die(mysql_error()); setcookie("tangologin", ""); die("Have a nice day!"); } if ($tangologin <> "") { echo " <form> <input type=\"submit\" value=\"logout\" name=\"submit\"> </form> "; } else echo "Du är inte inloggad!"; ?>

Visa signatur

Har du nhGPS? kolla detta.
Fotograferar lite ibland när jag har tid. Annars jobbar jag som fotograf.

Permalänk
Medlem

Nu har jag en lite fundering över header()

Om jagf skriver header(location: index.php);
då öppnar den index i samma fönster som den är i
Om jag då vill att index skall uppnas i fönstret iframe (target=iframe)
eller att det skall uppnas i huvudfönstret, hur skriver man då?

Jag har kolalt på php.net men hitatr inget som tycks lösa mitt problem

Visa signatur

Har bytt namn från: nulleman ~ Blogg: http://skorpion.se
MacBook Pro: 15.4' ~ 1.83GHz ~ 1512MB RAM ~ 80GB HDD
Medlem i signaturen blodtörstiga Appleanvändare