Jump to content

header() within class


samona

Recommended Posts

Hi all,

 

In the following code I have a header() call that should be executed when the username or password field is empty.  However, for some reason that header() function will not execute.  Instead, it goes all the way to the end of the process() method. 

 

Any help will be appreciated.

 

class ProcessLoginForm {

	private $db;

	public function __construct(){		

		$this->db = new MySQLDB();	

	}

	public function process()
	{	
		$guest_session = new Session();
		$errors = array();

		$username = sanatize($_POST['username']);
		$password = sanatize($_POST['password']);

		if (empty($username)) {
			$errors['username'] = 'The username field cannot be blank.';
		}

		if (empty($password)) {
			$errors['password'] = 'The password field cannot be blank.';
		}

		if (count($errors)) {							

			$_SESSION['errors'] = $errors;	

			header('Location:../login.php');				
		}				

		if ($this->db->authenticateUser($username, md5($password))) {	

			$guest_session->destroySession();
			$session = new Session();
			$session->registerSession($username);				
			header('Location:../welcome.php');
		}	

		$errors['invalid'] = 'Invalid Username/Password';
		$_SESSION['errors'] = $errors;
		header('Location:../login.php');

	}		
}

$proc = new ProcessLoginForm();
$proc->process();
?>

Link to comment
https://forums.phpfreaks.com/topic/233814-header-within-class/
Share on other sites

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.