

<?php
// connect to the database
    //include('connection.php');
	include('includes/header.php');
include ('includes/db.php');
?>


<style>
form {
  margin-right:100px;
  margin:20px 100px 20px 100px;
  border-radius: 15px;
  background-color: #3c42383d;
  padding: 20px 50px 20px 50px;
}
input[type=text], select {
  width: 100%;
  padding: 12px 20px;
  margin: 8px 0;
  display: inline-block;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-sizing: border-box;
}

input[type=submit] {
  width: 50%;
  background-color: #4CAF50;
  color: white;
  padding: 20px;
  margin: 8px 0;
  border: 1px;
  border-radius: 15px;
  cursor: pointer;
  margin-left: 200px;
}
input[type=reset] {
  margin-left:150px;
  margin-top:5px;
  border-radius: 15px;
  background-color: #3c42383d;
  padding: 20px 50px 20px 50px;
}

input[type=submit]:hover {
  background-color: #45a049;
}
button {
 margin-left:150px;
  margin-top:5px;
  border-radius: 15px;
  background-color: #3c42383d;
  padding: 20px 50px 20px 50px;
}
button:hover {
  background-color: #45a049;
}
form {
  width: 80%;
  border-collapse: collapse;
  margin: 100px auto;
}

</style>

<html>
  <head>
    <link rel="stylesheet" href="style.css">
    
  </head>
  <body>

  
    <div id="page-wrapper"> 
   
      <div class="row">
        <form action="actionproject.php" method="post" enctype="multipart/form-data" >
		<h1 class="page-header"><p style="font-size:xx-large;"><span class="different-text-color" style="font-weight:bold;">Add New Project</h1>
		 <label for="fname">Project Name</label>
    <input type="text" name="ProjectName" required placeholder="Project Name...">
	
	<label for="lname">Contact Name</label>
    <input type="text" name="ContactName" placeholder="Contact Name....">
	
	<label for="number_format">Phone No</label>
    <input type="text" name="PhoneNo" placeholder="Phone No....">

	<label for="Email">Email</label>
    <input type="text" name="Email" placeholder="Email....">

	<label for="lname">SortAddress</label>
    <input type="text" name="SortAddress" placeholder="Address....">


	
	<label for="lname">Address</label>
    <input type="text" name="Address" placeholder="Address....">
	
			<label for="lname">status:</label>

			<select type="text" name="status" id="">
				<option value="1">Active</option>
				<option value="0">Inactive</option>
			
			</select>

	
          <h3>Upload File</h3>
          <input type="file" name="myfile"> <br>
          <button type="submit" name="projectsave">Save</button>
		  <input type="reset" name="" class="btn btn-danger" value="Clear Fields">
        </form>
      </div>
    </div>
	
  </body>
</html>
<script>


    $(function() {
		
     $('.notification').tooltip({
        selector: "[data-toggle=tooltip]",
        container: "body"
    })

    });
    </script>

