Hello friend.
halojoy here
I can see several issues with your nice little script 🙂
I do not know how you have missed [man]session_start/man
we tell this like 13 times a day ....
Likewise, we always tell people to not use old function session_register()
it is not recommended no more!
Always turn on errors, when working with your code:
ini_set(display_errors = 1 )
and set: error_reporting( E_ALL )
... mostly same as: error_reporting( 2047 );
4. ALWAYS ! use this to test your DB QUERY
$result = mysql_query($sql);
if($result === false){
exit('db error: ' . mysql_error());
}
Study my changes,
try it and
post back any ERRORS or NOTICE you may get
<?php
session_start();
ini_set( 'display_errors', '1' );
error_reporting ( 2047 );
$host = "localhost"; // Host name
$username = "root"; // Mysql username
$password = "root"; // Mysql password
$db_name = "test"; // Database name
$tbl_name = "members"; // Table name
// Connect to server and select databse.
mysql_connect("$host", "root", "root")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
// username and password sent from signup form
$myusername=$_POST['myusername'];
$mypassword=$_POST['mypassword'];
$mylevel=$_POST['mylevel'];
$sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";
$result = mysql_query($sql);
if($result === false){
exit('db error: ' . mysql_error());
}
// 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){
// assign $_SESSION variables: $myusername, $mypassword and redirect to file "login_success.php"
$userdata = mysql_fetch_row($result); //get the user row
$_SESSION["mylevel"] = $userdata["user_level"];//column 'user_level' in userrow
$_SESSION["myusername"] = $myusername;
$_SESSION["mypassword"] = $mypassword;
$debug = true; // Turn on DEBUGGING
if($debug){
//for debug only
echo 'myusername: ' . $_SESSION["myusername"] . "<br />\n";
echo 'mypassword: ' . $_SESSION["mypassword"] . "<br />\n";
echo 'my level : ' . $_SESSION["mylevel"] . "<br />\n";
exit();
}
header("location:login_success.php");
}
else {
header("location:login_failure.php");
// echo "Wrong Username or Password";
}
exit(); //We make SURE this PHP Script ENDS
?>