wrong SESSIONs?

PHP programming forum. Ask questions or help people concerning PHP code. Don't understand a function? Need help implementing a class? Don't understand a class? Here is where to ask. Remember to do your homework!

Moderator: General Moderators

Post Reply
l_fhoenix_l
Forum Newbie
Posts: 3
Joined: Fri Dec 19, 2003 7:44 am

wrong SESSIONs?

Post by l_fhoenix_l »

Hi there,
thanks for your attention.
I've got such a big problem with sessions...
here are some parts of my sources which contains session processes:

post4.php:


session_start();
require('usercheck.php');
$dbuser="root";
$dbpass="";
$dbname="test";

if(!isset($_SESSION['username'])){
$username="Guest";
$password="Guest";
} else {
$username=$_SESSION['username'];
$password=$_SESSION['password'];
}


if (loginstate($username,$password)) {
$ebarat="Welcome $username <a href='signout.php'> [ Sign Out ]</a>";
$connection = mysql_connect("localhost","$dbuser", "$dbpass") or die("Couldn't Connect to db.");
@mysql_select_db($dbname, $connection) or die("Unable to connect to db");
$query = "SELECT * FROM `login` WHERE `username`= '$usernames' LIMIT 0,30 ";
$result=mysql_query($query);

$fname=mysql_result($result,0,"fname");
$lname=mysql_result($result,0,"lname");
$date=date("j, n, Y");

<finish>
forum2.php:

session_start();
require('usercheck.php');
$dbuser="root";
$dbpass="";
$dbname="test";

if(!isset($_SESSION['username'])){
$username="Guest";
$password="Guest";
} else {
$username=$_SESSION['username'];
$password=$_SESSION['password'];
}


if (loginstate($username,$password)) {
$ebarat="Welcome $username <a href='signout.php'> [ Sign Out ]</a>";
} else {
$unreg=true;$ebarat="Welcome Guest <a href='login2.htm'>[ Sign In ]</a>";
}


$connection = mysql_connect("localhost","$dbuser", "$dbpass") or die("Couldn't Connect to db.");
@mysql_select_db($dbname, $connection) or die("Unable to connect to db");


$query = "SELECT * "
. " FROM `messages` "
. " WHERE 1 AND `message` "
. " != ' ' LIMIT 0, 30";
$result=mysql_query($query);
$num = mysql_numrows($result);
<finish>

login.php:(Terse)

session_register('username');
$_SESSION['username']=$username;

session_register('password');
$_SESSION['password']=$password;
session_register('ebarat');
$_SESSION['ebarat']="<font face='Verdana' size='2' color='#808080'>[<a href=signout.php> Signout</a> ]</font></p>";

<finish>


The problem is that it returns $password empty in post2.php and the pages are in this order: login.php===>Forum2.php===>(write message form which is only available for signed in users)Post2.php and there is a usercheck.php file which checks user/pass with db and i included it in every page

can any one help please?
User avatar
twigletmac
Her Royal Site Adminness
Posts: 5371
Joined: Tue Apr 23, 2002 2:21 am
Location: Essex, UK

Post by twigletmac »

For a starter, this:

Code: Select all

session_register('username');
$_SESSION['username']=$username;

session_register('password');
$_SESSION['password']=$password;
session_register('ebarat');
$_SESSION['ebarat']="<font face='Verdana' size='2' color='#808080'>[<a href=signout.php> Signout</a> ]</font></p>";
should be:

Code: Select all

$_SESSION['username'] = $username;
$_SESSION['password'] = $password;
$_SESSION['ebarat'] = "<font face='Verdana' size='2' color='#808080'>[<a href=signout.php> Signout</a> ]</font></p>";
you mustn't use both $_SESSION and session_register() and $_SESSION should be used in preference to session_register(). In case you don't, you also need session_start() before you do all that on login.php.

Mac
l_fhoenix_l
Forum Newbie
Posts: 3
Joined: Fri Dec 19, 2003 7:44 am

Post by l_fhoenix_l »

It just doesn't work on my webhost. but it works on my own IIS. i don't know whats the problem and twinglemac your suggestion doesn't change anything:( but thanks anyways...any further help?
User avatar
twigletmac
Her Royal Site Adminness
Posts: 5371
Joined: Tue Apr 23, 2002 2:21 am
Location: Essex, UK

Post by twigletmac »

That was for starters because it is something you'd need to change. Could you please make it easier for us to read your code by editing your first post and adding tags around the PHP code.

Mac
Post Reply