This question already has an answer here:
- How can I get useful error messages in PHP? 26 answers
- How to fix “Headers already sent” error in PHP 11 answers
I'm creating a login/signup page. Where when designing a signup's full Php code I incur a problem where when using header() function in PHP it is not redirecting to other pages. It is always loading the same page. Means, if I am on page 'signup.inc.php' and my header() wants to redirect to header("Location: ../signup.php?error=emptyfields"); it loads to 'signup.inc.php' page again. [Note: my signup.php page is in a folder named as 'includes' that's why I used ../]
I tried using ob_start(); and checked for any white spaces if any but nothing seems to work.
<?php
if(!isset($_POST['signup-submit'])){
require 'dbh.inc.php';
$username =$_POST['uid'];
$email =$_POST['mail'];
$password =$_POST['pwd'];
$passwordRepeat =$_POST['pwd-repeat'];
if(empty($username) || empty($email) || empty($password) ||
empty($passwordRepeat)){
header("Location: ../signup.php?
error=emptyfields&uid=".$username."&mail=".$email);
exit();
}
I expect the output to be 'localhost/signup.php?error=emptyfields&uid=".$username."&mail=".$email' but the output is 'localhost/signup.inc.php'enter code here
</div>