Jump to content

Changing from session_register to $_SESSION


alconebay

Recommended Posts

I used this tutorial (http://www.phpeasystep.com/workshopview.php?id=6)  to make a basic login system for a site I'm doing. It worked great until I changed servers. Apparently dreamhost has a newer version of php and the  "session_register" no longer works. When I try to echo the username and passwords it's blank.

 

So anyway, how do I get the username and password from

 

session_register("myusername");

session_register("mypassword");

 

to a system using "$_SESSION"? Will I need a new script or will it be easy to modify the one I'm using?

 

<?php
// username and password sent from form
$myusername=$_POST['myusername'];
$mypassword=$_POST['mypassword'];

// To protect MySQL injection (more detail about MySQL injection)
$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
$myusername = mysql_real_escape_string($myusername);
$mypassword = mysql_real_escape_string($mypassword);

$sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";
$result=mysql_query($sql);

// Mysql_num_row is counting table row
$count=mysql_num_rows($result);
// If result matched $myusername and $mypassword, table row must be 1 row

if($count==1){
// Register $myusername, $mypassword and redirect to file "login_success.php"
session_register("myusername");
session_register("mypassword");
header("location:login_success.php");
}
else {
echo "Wrong Username or Password";
}
?>

 

 

Hmmm. I was reading this (http://hvassing.com/2007/simple-php-login-script-using-session-and-mysql/) and I saw how he registered the username and password by doing this

$_SESSION['member_ID'] = $row['ID'];

 

So I went back to my login system and replaced this:

 

session_register("myusername");
session_register("mypassword");

 

With this:

 

$_SESSION['myusername'] = $myusername;
$_SESSION['mypassword'] = $mypassword;

 

And my login system seems to be working again. I'm hoping I didn't create a big security problem or anything.  :-\

session_register/session_is_registered are depreciated functions. They should only be used if register_globals is enabled.

 

When setting/retrieving a session variable you use the newer $_SESSION superglobal variable.

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.