Link to home
Start Free TrialLog in
Avatar of Jazzy 1012
Jazzy 1012

asked on

Making register page log you in after registration is complete.

I have this registration form that a user fills out and it sends to another page that adds the information in my database. Is there a way that after the person registers I can send the username and password to the sign-in page and  it logs them in automatically?

Form:
 <form class="form-horizontal" action="add.php" method="post" onsubmit="return ValidationEvent()">
                <fieldset>
                    <legend>SIGN UP! <i class="fa fa-pencil pull-right"></i></legend>
 <div class="form-group">
                     <?php 
if($_GET['a'] == 1)
{
echo "<p class='alert alert-danger'>Username Already taken</p>";

}
if($_GET['a'] == 2)
{
	echo " <p class= 'alert alert-success'> Your registration is complete </p>";
}

?>
	<div class="col-sm-6">
        <input type="text" id="firstName" placeholder="First Name" class="form-control" name="firstname" value="<?=formDisplay(getSessionValue("er_firstname"))?>" autofocus required>
    </div>
    <div class="col-sm-6">
        <input type="text" id="lastname" placeholder="Last Name" class="form-control" name="lastname" value="<?=formDisplay(getSessionValue("er_lastname"))?>" autofocus required>
	</div>
</div>
                
                <div class="form-group">
                    <div class="col-sm-12">
                        <input type="email" id="email" placeholder="Email" name="email" class="form-control" value="<?=formDisplay(getSessionValue("er_email"))?>" required>
                    </div>
                </div>
              <div class="form-group">
                    <div class="col-sm-12">
                        <input type="email" id="cemail" placeholder=" Re-enter Email" name="cemail" class="form-control" value="<?=formDisplay(getSessionValue("er_cemail"))?>" required>
                    </div>
                </div>
                
                 <div class="form-group">
                    <div class="col-sm-12">
                        <input type="text" id="username" placeholder=" Username" name="username" class="form-control" required>
                    </div>
                </div>
                
                <div class="form-group">
                    <div class="col-sm-12">
                        <input type="password" id="password" placeholder="Password" name="password" class="form-control" required>
                    </div>
                </div>
                <div class="form-group">
                    <div class="col-sm-12">
                        <input type="text" id="datepicker" placeholder= "DOB" name="birthday" class="form-control" value="<?=formDisplay(getSessionValue("er_birthday"))?>" required>
                    </div>
                </div>
                <div class="form-group">
                    <label class="control-label col-sm-1"></label>
                    <div class="col-sm-8">
                        <div class="row">
                                <label class="radio-inline">
                                    <input type="radio" id="radio" value="Female" name= "gender" required>Female
                                </label>
                            
                           
                                <label class="radio-inline">
                                    <input type="radio" id="radio" value="Male" name= "gender">Male
                                </label>

                        </div>
                    </div>
                </div> <!-- /.form-group -->
                <div class="form-group">
                    <div class="col-sm-4 col-sm-offset-3">
                        <button type="submit" class="btn btn-primary btn-block">Register</button>
                    </div>
                </div>
            </form>

Open in new window


Add.php page:
require "connection.php";

session_start();

if ($_POST['firstname'] != "" && $_POST['lastname'] !="" && $_POST['email'] != "" && $_POST['cemail'] !="" && $_POST['username'] !="" && $_POST['password'] !="" && $_POST['birthday'] !="" && $_POST['gender'] !="")
{
	$firstname = $_POST['firstname'];
	$lastname = $_POST['lastname'];
	$email = $_POST['email'];
	$cemail = $_POST['cemail'];
	$password = $_POST['password'];
	$birthday = $_POST['birthday'];
	$gender = $_POST['gender'];
	$username = $_POST['username'];
	
	$query1="SELECT * FROM users WHERE username = '$username' ";
	$username = mysqli_real_escape_string($conn,$username);
	$password = mysqli_real_escape_string($conn,$password);
	$firstname = mysqli_real_escape_string($conn,$firstname);
	$lastname = mysqli_real_escape_string($conn,$lastname);
	$email = mysqli_real_escape_string($conn,$email);
	$cemail = mysqli_real_escape_string($conn,$cemail);
	$birthday = mysqli_real_escape_string($conn,$birthday);
	$gender = mysqli_real_escape_string($conn,$gender);
	
	

	$result = mysqli_query($conn,$query1)
	or die(mysqli_error($conn));  

	if(mysqli_num_rows($result) != 0)
	{
		$_SESSION['er_firstname'] = $firstname;
		$_SESSION['er_lastname'] = $lastname;
		$_SESSION['er_email'] = $email;
		$_SESSION['er_cemail'] = $cemail;
		$_SESSION['er_birthday'] = $birthday;
		header("Location: index.php/?a=1");
	}
	
	
	
	else {
		unset($_SESSION['er_firstname']);
		unset($_SESSION['er_lastname']);
		unset($_SESSION['er_email']);
		unset($_SESSION['er_cemail']);
		unset($_SESSION['er_birthday']);
	$query = "INSERT INTO users (firstname, lastname, email, password, date_birth, gender, username, file) VALUES ('$firstname','$lastname','$email','$password', '$birthday' , '$gender' , '$username', '$file')";
	
	
	$data = mysqli_query($conn,$query)or die(mysqli_error($conn));
	
	header("Location: index.php/?a=2");
	  
	}
	
}


?>

Open in new window

ASKER CERTIFIED SOLUTION
Avatar of Ray Paseur
Ray Paseur
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of Jazzy 1012
Jazzy 1012

ASKER

This is also the php page when a user enters there username and password:
<?php 

session_start();
$username = $_POST['username']; //either username or email
$password = $_POST['password'];


if($username=="" || $password == "")
{
	header("Location: index.php");
	
}

require "connection.php";

if(!empty($username) && !empty($password)) {
	
    $username = mysqli_real_escape_string($conn,$username);
    $password = mysqli_real_escape_string($conn,$password);

    
    $query = "SELECT * FROM users WHERE username = '$username' OR email = '$username' AND password = '$password'";
    $data = mysqli_query($conn,$query);

   
    if($data) {
        if (mysqli_num_rows($data) == 1 ) {
            $row = mysqli_fetch_assoc($data);
            $_SESSION['id'] = $row['id'];
            $_SESSION['username'] = $row['username'];
           
           	header("Location: http://home");
           	
        }
        else {
            header("Location: index.php/?i=1");
            exit();
        } }

    else {
        die("Query failed");
    }

}
else {
    $_SESSION['message'] = "Please enter a email and password";
    header("Location: index.php");
    exit();
}

$conn->close();

Open in new window


Maybe have a code to send them from the registration add.php to this code?