webForumDet fria alternativet

sessions vägrar fungera..

2 svar · 149 visningar · startad av rittfeldt

rittfeldtMedlem sedan jan. 200355 inlägg
#1

börjar med koden...

<?php
//dologin.php
session_start(); 
include("../connection.php");

$username = $_POST['username'];
$password = $_POST['password'];
$result = mysql_query("SELECT * FROM members WHERE username ='$username' AND password = '$password'", $connection) or die(mysql_error()); 
$num_rows = mysql_num_rows($result);
if ($num_rows != 0) {//i.e. correkt pwd and uname
  $SESSION['user'] = $username; 
  header("Location: index.php?".SID); 
  exit; 
}
else {
	header("Location: login.php"); 
}
?>
<?php
//index.php
session_start(); 
if (!isset($_SESSION['user'])){ 
  header("Location: login.php");
  exit;
}
else{
include("../connection.php");
?>

<html>
<head>
.
.
.

Nu till problemet.
Jag skickas tillbaka till login.php hela tiden och jag har konstaterat att det är if-satsen i index.php som spökar, det är alltså där jag skickas tillbaka. Men varför?? :q

Jag har läst andra trådar på forumet där man har haft liknande problem, men inga svar har hjälp mig lösa problemet.
Och Ja, jag har globlas on! (skulle gärna slippa det men det är en annan fråga sen...)
Nån som vet?:OO

GrodanBollMedlem sedan sep. 2001788 inlägg
#2

Re: sessions vägrar fungera..

rittfeldt skrev:

börjar med koden...

<?php
//dologin.php
session_start(); 
include("../connection.php");

$username = $_POST['username'];
$password = $_POST['password'];
$result = mysql_query("SELECT * FROM members WHERE username ='$username' AND password = '$password'", $connection) or die(mysql_error()); 
$num_rows = mysql_num_rows($result);
if ($num_rows != 0) {//i.e. correkt pwd and uname
  $SESSION['user'] = $username; 
  header("Location: index.php?".SID); 
  exit; 
}
else {
	header("Location: login.php"); 
}
?>

Hmmm... du har skrivet fel när du ska registrera sessionsvariablen.

$SESSION['user'] = $username;  -> $_SESSION['user'] = $username;

/Grodan

rittfeldtMedlem sedan jan. 200355 inlägg
#3

:)
tack för det snabba svaret (9 min). Det var där feldt låg.
Man blir lätt lite blind på sin egen kod ibland. Kan kvitta hur mycket man än går igenom den. :OO
nåja, tack tack igen..

136 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)