NYCPHP Meetup

NYPHP.org

OT RE: [nycphp-talk] EZ Session Question...

Chris Bielanski Cbielanski at inta.org
Wed Feb 11 12:03:38 EST 2004


Chris Hubbard said (with Bielanski editing for humor)...

>either right after the <?php tag or after the comments at the top of the 
>file...
>(you have comments right?)

Best giggle I've had today :)

~C

> -----Original Message-----
> From: Chris Hubbard [mailto:chubbard at next-online.net]
> Sent: Wednesday, February 11, 2004 11:57 AM
> To: NYPHP Talk
> Subject: Re: [nycphp-talk] EZ Session Question...
> 
> 
> Greg,
> Couple things.
> make sure session_start(); or ob_start(); is at the top of your file, 
> either right after the <?php tag or after the comments at the 
> top of the 
> file (you have comments right?).
> Depending on the version of PHP you've got installed and how 
> you've got 
> it configured there are multiple answers to your problem.
> I'm going assume you've got a recent version of PHP and you've got it 
> configured the "right" way.
> 
> at the top of every page, start with:
> <?php
> sesssion_start();
> 
> If you want to put some data into a session do this:
> $_SESSION["key"] = "some value"; or
> $_SESSION["key"] = $value;
> 
> In your case looks like you want to have:
> $_SESSION["key"] = $username;
> (that's assuming you've cleaned and validated $username ( - which you 
> haven't in your code..)).
> 
> Then when you want to display the username:
> echo "Logged in as: ". $_SESSION["username"] ."<br>";
> 
> Rather than having a "valid_user" type:  If the user is not 
> valid, don't 
> add the username to the session.  It's easier than juggling multiple 
> variables that contain similar information.
> 
> I also recommend that you turn on error reporting while you code:
> error_reporting("E_ALL");
> 
> Chris
> 
> Greg Faber wrote:
> 
> > Hi all,
> >
> > I just joined this list and just began writing php. I have 
> a problem 
> > with my session variable and I have no doubt it's something dumb so 
> > you should be able to help me out pretty quickly. And I 
> thank you all 
> > for your aid.
> >
> > Here's the situation:
> > I have a login script, a registration script and a "members 
> only"-type 
> > script.
> > Let's start at the login page: if you are a member you enter your 
> > username and password and you are logged in and get a message like 
> > "logged in as George".
> > If you aren't a member you must register. Once you register 
> > successfully, you can go to the members only page [here's 
> my problem] 
> > but it says "logged in as " and then nothing. My session 
> variable is 
> > obviously registered because the script gets a true result from 
> > session_is_registered() but the session variable contains 
> nothing. I 
> > think the issue might be in the check_valid_user() function...
> >
> > thanks, Greg
> >
> > Here's some script excerpts:
> >
> > // registered.php
> >
> > require_once("images_fns.php");
> > session_start();
> > $username = $_POST["username"];
> > $password = $_POST["passwd"];
> > $valid_user = $_SESSION["valid_user"];
> > if ($username && $password)
> > // they have just tried logging in
> > {
> > if (login($username, $password))
> > {
> > // if they are in the database register the user id
> > $valid_user = $username;
> > session_register("valid_user");
> > }
> > else
> > {
> > // unsuccessful login
> > do_html_header("Problem:");
> > echo "You could not be logged in.
> > You must be logged in to view this page.";
> > do_html_url("login.php", "Login");
> > do_html_footer();
> > exit;
> > }
> > }
> >
> > do_html_header("Home");
> > check_valid_user();
> > 
> --------------------------------------------------------------
> ------------------ 
> >
> > //part of register_new.php
> >
> > $reg_result = register($username, $email, $passwd);
> > if ($reg_result == "true")
> > {
> > // register session variable
> >
> >
> > session_register('valid_user');
> > $valid_user = $username;
> >
> >
> > // provide link to members page
> > do_html_header("Registration successful");
> > echo "Your registration was successful. Go to the users 
> page to start 
> > uploading your files!";
> > do_HTML_URL("registered.php", "Go to users page");
> > }
> > 
> --------------------------------------------------------------
> --------------- 
> >
> >
> > // check_valid_user() function used in the registered.php script
> > function check_valid_user()
> > // see if somebody is logged in and notify them if not
> > {
> >
> >
> > global $valid_user;
> >
> >
> > if (session_is_registered("valid_user"))
> > {
> > echo "Logged in as $valid_user";
> > echo "<br>";
> > }
> > else
> > {
> > // they are not logged in
> > do_html_heading("Problem:");
> > echo "You are not logged in.<br>";
> > do_html_url("login.php", "Login");
> > do_html_footer();
> > exit;
> > }
> > }
> >
> >-------------------------------------------------------------
> -----------
> >
> >_______________________________________________
> >talk mailing list
> >talk at lists.nyphp.org
> >http://lists.nyphp.org/mailman/listinfo/talk
> >  
> >
> _______________________________________________
> talk mailing list
> talk at lists.nyphp.org
> http://lists.nyphp.org/mailman/listinfo/talk
> 



More information about the talk mailing list