tommycahir Posted April 4, 2009 Share Posted April 4, 2009 Hi All I am a relative newbie to PHP and I am having issues with the below login script. I can get it to log me in correct no problems and validates the data correctly but what I want it to do is when the login fails I want it to return me to the index.php page and return a specific line of text along the lines of "username or password were incorrect please try again". I can get it to return to the PHP page an d return an error but for some unknown reason to me it displays the error on the registration page. BTW I have the returning to a page with error message if some fields are blank working for the registration page so not sure what i need to alter to get the same happening for a failed login Any help you can give would be greatly appreciated: Regards Tommy Below is my code for executing the login <?php //Start session session_start(); //Include database connection details require_once('config.php'); //Array to store validation errors $errmsg_arr = array(); //Validation error flag $errflag = false; //Connect to mysql server $link = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD); if(!$link) { die('Failed to connect to server: ' . mysql_error()); } //Select database $db = mysql_select_db(DB_DATABASE); if(!$db) { die("Unable to select database"); } //Function to sanitize values received from the form. Prevents SQL injection function clean($str) { $str = @trim($str); if(get_magic_quotes_gpc()) { $str = stripslashes($str); } return mysql_real_escape_string($str); } //Sanitize the POST values $login = clean($_POST['login']); $password = clean($_POST['password']); //Input Validations if($login == '') { $errmsg_arr[] = 'Login ID missing'; $errflag = true; } if($password == '') { $errmsg_arr[] = 'Password missing'; $errflag = true; } //Create query $qry="SELECT * FROM members WHERE login='$login' AND passwd='".md5($_POST['password'])."'"; $result=mysql_query($qry); //Check whether the query was successful or not if($result) { if(mysql_num_rows($result) == 1) { //Login Successful session_regenerate_id(); $member = mysql_fetch_assoc($result); $_SESSION['SESS_MEMBER_ID'] = $member['member_id']; $_SESSION['SESS_FIRST_NAME'] = $member['firstname']; $_SESSION['SESS_EMAIL'] = $member['email']; session_write_close(); header("location: ../products.php"); exit(); }else { //Login failed //header("location: login-failed.php"); $errmsg_arr[] = 'username or password were incorrect please try again'; $errflag = true; } }else { die("Query failed"); } //If there are input validations, redirect back to the login form if($errflag) { $_SESSION['ERRMSG_ARR'] = $errmsg_arr; session_write_close(); header("location: ../index.php"); exit(); } ?> Link to comment https://forums.phpfreaks.com/topic/152522-login-script-code/ Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.