<?php
ob_start();
date_default_timezone_set("Asia/Dhaka");
//Transations Add Actions
// connect to the database
    include('includes/connection.php');
	

if (isset($_POST['contactsave'])) { // if save button on the form is clicked
    // name of the uploaded file
	
	
	$name = $_POST['name'];
	$phone = $_POST['phone'];
	$email = $_POST['email'];
	$subject = $_POST['subject'];
	$message = $_POST['message'];
    
	
            $sql = "INSERT INTO contact_massage (name, phone, email, subject, message, type ) VALUES
			('$name', '$phone', '$email', '$subject', '$message', 'index page')";
            if (mysqli_query($conn, $sql)) {
                $msg= "Thank You .... $name, The message has been sent Successfully .";
            
        } else {
            echo "Failed to upload .";
			
        }
    }

header("location:../index.php?msg=".$msg);
ob_end_flush();
?> 