Sie sind auf Seite 1von 26

DON BOSCO INSTITUTE OF TECHNOLOGY

KURLA , MUMABI
A PROJECT REPORT ON

“POSTGRADUATION ADVISOR”
SUBMITTED BY:
Gaurav Jain-24
Jevina Verghese-26
Ananya Kale-31

UNDER THE GUIDENCES OF:

Vaishali Kavathekar

DEPARTMENT OF INFORMATION TECHNOLOGY

(2019-2020)
CERTIFICATE

This is to certify that the project entitled “POSTGRADUATION ADVISOR”


is a bonafide work of GAURAV JAIN (24), JEVINA VERGHESE (26),
ANANYA KALE (31) submitted to the University of Mumbai in partial
fulfillment of the requirement for the award of the degree of “TE IT” in
“Internet Programming”.

(GUIDE SIGNATURE) ( HOD SIGNATURE)


Dissertation Approval Certificate

This project report entitled website on POSTGRADUATION ADVISOR by


GAURAV JAIN , JEVINA VERGHESE ,ANANYA KALE is approved for
the degree of Bachelor of Engineering in Information Technology.

Examiners

1._________________________

Name:-

Date:-

Place:-
Declaration
I declare that this written submission represents my ideas in my own words
and where others' ideas or words have been included, I have adequately cited
and referenced the original sources. I also declare that I have adhered to all
principles of academic honesty and integrity and have not misrepresented
or fabricated or falsified any idea/data/fact/source in my submission.
I understand that any violation of the above will be cause for disciplinary
action by the Institute and can also evoke penal action from the sources
which have thus not been properly cited or from whom proper permission has
not been taken when needed.

--------------------------------------
(Gaurav Jain-24
Jevina Verghese-26
Ananya Kale-31)

Date:
ABSTRACT
1. Introduction

Problem Statement :

To make students aware of what all they can do postgraduation(postgraduation advisor).

Scope of the Project :

A postgraduate course is typically one year’s duration full time or it can take two years to
complete part-time. A postgraduate diploma, postgraduate degree or Master's degree offers the
student an advanced level of education in their chosen area of study. We are going to give students
information about all the courses which can be done and the exams which can be given after
graduation. We are also providing information about the placements and placement exams.

Current Scenario :

Students who graduate and need information about all the exams and placement details need
to search all the information about it in different websites but this website gives all the information
about what is to be done after graduation.

Need for the Proposed System :

Our website will help the students to get all the information about what is to be done after
graduation.
2. Review of Literature

2.1 Summary of the investigation of the existing application:


3. Analysis and Design
Methodology/Analysis Circuit diagram of hardware and explanation :

As we can see an Arduino Uno is used to control all the sensors. The complete board is
powered by a 9V battery which is regulated to +5V using a 7805 Voltage regulator. The Ultrasonic
sensor is powered by 5V and the trigger and Echo pin is connected to Arduino nano pin 3 and 2 as
shown above. The output of the board is given by the Buzzer which is connected to pin 12.

4. Implementation
1. RESPONSIVE WEB DESIGNING / LAYOUT DESIGNING

2. HTML5, CSS3

3. PHP MYSQL

4. AJAX / JSON

5. BOOTSTRAP

6. SWIFT MAILER

5. Results and Discussion


HOMEPAGE

INDEX.PHP
<!DOCTYPE html>
<html>

<head>
<link rel = "icon" type = "image/png" href = "Images/Logo/logo1.png">
<!-- For apple devices -->
<link rel = "apple-touch-icon" type = "image/png" href = "Images/Logo/logo1.png"/>
<title>
Smart Blind Stick
</title>
<meta name="viewport" content="width=device-width, initial scale=1.0">
<link rel="stylesheet" href="styles/style.css">

</head>
<body>

<div>

<header class="logo">
<br>
<center><a href="#"><img id="logo" src="images/Logo/logo1.png" alt="Smart Blind Stick"></a></
center>
<h4>Smart Blind Stick</h4>

</header>

</div>

<div>
<ul id="nav">
<li ><a href="home">Home</a></li>
<li ><a href="working">Working</a></li>
<li ><a href="registration">Registration</a></li>
</ul>
</div>

<script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
<script src="js/jquery.js"></script>
<script src="js/nav.js"></script>

<div id="xyz">

</div>
<footer>
<div class="section">
<p><h4>Smart Blind Stick</h4>
<b>+91 8082648304</b><br>
Premier Automobiles Road,<br>
Kurla(W),<br>
Mumbai-400070<br>
smartblindstick.com
</p>
</div>

<div class="section">
<p>Connect with Us!</p>
<ul id="icons">
<li><a href="#"><img src="images/Icons/icons8-facebook-64.png"></a></li>
<li><a href="#"><img src="images/Icons/icons8-google-plus-circled-64.png"></a></li>
<li><a href="#"><img src="images/Icons/icons8-twitter-64.png"></a></li>
<li><a href="#"><img src="images/Icons/icons8-play-button-64.png"></a></li>
</ul>
</div>

</footer>

<div>
<p style="text-align:center; padding:0px">&#169;Copyright - Smart Blind Stick , 2019</p>
</div>

</body>

</html>

HOME.PHP

<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="styles/style.css">
</head>
<body>
<br><br><br><br><br>
<div id="wrapper">
<div class="banner">

<a href="#"><center><img src="images/Main/banner1.jpg" alt="" title=""></center> </a>


</div>

<section class="about">
<p style="text-
indent:50px;">Ever heard of Hugh Herr? He is a famous American rock climber who has shattered the limitations
of his disabilities; he is a strong believer that technology could help disabled persons to live a normal life. In one o
f his TED talk Herr said “Humans are not disabled. A person can never be broken. Our built environment, our tec
hnologies, is broken and disabled. We the people need not accept our limitations, but can transfer disability throug
h technological Innovation”. These were not just words but he lived his life to them, today he uses Prosthetic legs
and claims to live to normal life. So yes, technology can indeed neutralize human disability; with this in mind let u
s use the power of Arduino and simple sensors to build a Blind man’s stick that could perform more than just a sti
ck for visually impaired persons</p>
<p style="text-
indent:50px;">This Smart stick will have an Ultrasonic sensor to sense distance from any obstacle, LDR to sense l
ighting conditions and a RF remote using which the blind man could remotely locate his stick. All the feedbacks
will be given to the blind man through a Buzzer. Of course you can use a vibrator motor in place of Buzzer and ad
vance a lot more using your creativity.</p>
</section>
</div>
</body>
</html>

REGISTRATION PAGE

REGISTRATION.PHP

<?php require_once 'controllers/authController.php'; ?>

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<!-- Bootstrap -->
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
<link rel="stylesheet" href="styles/reg.css">
</head>

<body>
<br><br><br><br>
<div id="wrapper">
<div id="container">
<div class="row">
<div class="col-md-4 offset-md-4 form-div">
<form action="registration.php" method="post">
<h3 class="text-center">REGISTER</h3>

<?php if(count($errors) > 0 ): ?>


<div class="alert alert-danger">
<?php foreach($errors as $error): ?>
<li><?php echo $error; ?></li>
<?php endforeach; ?>
</div>
<?php endif; ?>

<div class="form-group">
<label for="username">Username</label>
<input type="text" name="username" value="<?php echo $username; ?>" class="form-
control form-control-lg">
</div>

<div class="form-group">
<label for="email">Email</label>
<input type="email" name="email" value="<?php echo $email; ?>" class = " form-control form-
control-lg">
</div>

<div class="form-group">
<label form="password">Password</label>
<input type="password" name="password" class="form-control form-control-lg">
</div>

<div class="form-group">
<label for="passwordConf"> Confirm Password</label>
<input type="password" name="passwordConf" class="form-control form-control-lg">
</div>

<div class="form-group">
<button type="submit" name="signup-btn" class="btn btn-primary btn-block btn-
lg">Register</button>
</div>

<p class="text-center">Already a member? <a href="login.php">Sign In</a></p>


</form>
</div>
</div>
</div>
</div>
</body>
</html>

LOGIN PAGE

LOGIN.PHP

<?php require_once 'controllers/authController.php'; ?>

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<!-- Bootstrap -->
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
<link rel="stylesheet" href="styles/reg.css">
</head>

<body>
<br><br><br><br><br>
<div id="wrapper">
<div id="container">
<div class="row">
<div class="col-md-4 offset-md-4 form-div login">
<form action="login.php" method="post">
<h3 class="text-center">LOGIN</h3>

<?php if(count($errors) > 0 ): ?>


<div class="alert alert-danger">
<?php foreach($errors as $error): ?>
<li><?php echo $error; ?></li>
<?php endforeach; ?>
</div>
<?php endif; ?>

<div class="form-group">
<label for="username">Username or Email</label>
<input type="text" name="username" value="<?php echo $username; ?>" class="form-
control form-control-lg">
</div>

<div class="form-group">
<label form="password">Password</label>
<input type="password" name="password" class="form-control form-control-lg">
</div>

<div class="form-group">
<button type="submit" name="login-btn" class="btn btn-primary btn-block btn-
lg">Login</button>
</div>

<p class="text-center">Not yet a member? <a href="registration.php">Register</a></p>


</form>
</div>
</div>
</div>
</div>
</body>
</html>

DATABASE CONNECTIVITY
DB.PHP

<?php

require 'constants.php';

$conn= new mysqli(DB_HOST, DB_USER, DB_PASS, DB_NAME);

if($conn->connect_error){
die('Database error:' .$conn->connect_error);
}

?>

VERIFICATION EMAIL
AUTHCONTROLLER.PHP

<?php
session_start();

require 'config/db.php';
require_once 'emailController.php';

$errors=array();
$username="";
$email="";

//if user clicks on sign in button


if (isset($_POST['signup-btn'])){
$username=$_POST['username'];
$email=$_POST['email'];
$password=$_POST['password'];
$passwordConf=$_POST['passwordConf'];

//validation
if(empty($username)){
$errors['username']="Username required";
}

if(!filter_var($email,FILTER_VALIDATE_EMAIL)){
$errors['email']="Email is Invalid";
}

if(empty($email)){
$errors['email']="Email required";
}

if(empty($password)){
$errors['password']="Password required";
}

if($password !== $passwordConf){


$errors['password']="The two passwords do not match";
}

$emailQuery="SELECT * FROM users WHERE email=? LIMIT 1";


$stmt=$conn->prepare($emailQuery);
$stmt->bind_param('s',$email);
$stmt->execute();
$result=$stmt->get_result();
$userCount=$result->num_rows;
$stmt->close();

if($userCount>0){
$errors['email']="Email already exists";
}

if(count($errors)==0){
$password=password_hash($password,PASSWORD_DEFAULT); //encrypts password using inbuilt functio
n
$token=bin2hex(random_bytes(50)); //generates random string of 100 and stores in token variable
$verified=false;

$sql="INSERT INTO users (username,email,verified,token,password) VALUES (?,?,?,?,?)";


$stmt=$conn->prepare($sql);
$stmt->bind_param('ssbss',$username,$email,$verified,$token,$password);

if($stmt->execute()){
//login user
$username_id=$conn->insert_id;
$_SESSION['id']= $user_id;
$_SESSION['username']= $username;
$_SESSION['email']= $email;
$_SESSION['verified']= $verified;

sendVerificationEmail($email,$token);

//set flash message


$_SESSION['message']="You are now registered!";
$_SESSION['alert-class']="alert-success";
header('location:intermediate.php');
exit();

} else {
$errors['db_error']="Database error:Failed to register";
}
}

//if user clicks on login button


if (isset($_POST['login-btn'])){
$username=$_POST['username'];
$password=$_POST['password'];

//validation
if(empty($username)){
$errors['username']="Username required";
}

if(empty($password)){
$errors['password']="Password required";
}

if(count($errors)== 0){
$sql= "SELECT * FROM users WHERE email=? OR username=? LIMIT 1";
$stmt=$conn->prepare($sql);
$stmt->bind_param('ss',$username,$username);
$stmt->execute();
$result= $stmt->get_result();
$user=$result->fetch_assoc();

if(password_verify($password,$user['password'])){
//login success
$_SESSION['id']= $user['id'];
$_SESSION['username']= $user['username'];
$_SESSION['email']= $user['email'];
$_SESSION['verified']= $user['verified'];
//set flash message
$_SESSION['message']="You are now registered!";
$_SESSION['alert-class']="alert-success";
header('location:intermediate.php');
exit();
} else {
$errors['login_fail']="Wrong credentials";
}
}

//logout

if(isset($_GET['logout'])){
session_destroy();
unset($_SESSION['id']);
unset($_SESSION['username']);
unset($_SESSION['email']);
unset($_SESSION['verified']);
header('location:login.php');
}

//verification of token
function verifyUser($token){
global $conn;
$sql="SELECT * from users WHERE token='$token' LIMIT 1";
$result=mysqli_query($conn,$sql);

if(mysqli_num_rows($result)>0){
$user=mysqli_fetch_assoc($result);
$update_query="UPDATE users SET verified=1 WHERE token='$token'";

if(mysqli_query($conn,$update_query)){
//verified succcessfully
$_SESSION['id']= $user['id'];
$_SESSION['username']= $user['username'];
$_SESSION['email']= $user['email'];
$_SESSION['verified']= 1;
//set flash message
$_SESSION['message']="Your email has been verified!";
$_SESSION['alert-class']="alert-success";
header('location:intermediate.php');
exit();
} else {
echo 'User not found';
}
}
}

EMAILCONTROLLER.PHP

<?php

require_once 'vendor/autoload.php';
require_once 'config/constants.php';

//SwiftMailer
// Create the Transport
$transport = (new Swift_SmtpTransport('smtp.gmail.com', 465,'ssl'))
->setUsername(EMAIL)
->setPassword(PASSWORD);

// Create the Mailer using your created Transport


$mailer = new Swift_Mailer($transport);

function sendVerificationEmail($userEmail,$token)
{
global $mailer;
$body=
'
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>

<div class="wrapper">
<p>
Thank you for signing up on our website.Please click on the link below to verify your email.
</p>
<a href="http://localhost/sbs/intermediate.php?token='. $token . '">Verify Your Email Address</a>
</div>

</body>
</html>
';

// Create a message
$message = (new Swift_Message('Verify your Email Address'))
->setFrom(EMAIL)
->setTo($userEmail)
->setBody($body,'text/html');

// Send the message


$result = $mailer->send($message);
}

?>

AJAX IMPLEMENTATION
(NAV.JS)

$(document).ready(function() {
//initial
$('#xyz').load('home.php');

//menu clicks
$('ul#nav li a').click(function(){
var page=$(this).attr('href');
$('#xyz').load(page + '.php');
return false;
});
});

STYLESHEET

body{
background:grey;
font-family:Verdana,Tahoma,Arial,sans-serif;
font-size:18px;
overflow:auto;
}
h4{
text-align:center;

p{
padding:2%;
}

img{
text-align:center;
max-width:100%;
height:auto;
width:auto;
}

#logo{
height:150px;
width:150px;
}

#wrapper{
margin:0 auto;
max-width:1020px;
width:98%;
background:#E3DEDE;
border:1px solid black;
border-radius:2px;
box-shadow: 0 0 10px 0px rgba(12,3,23,0.8);
}

header{
padding:5px;
min-height:125px;
}

ul#nav{
list-style:none;
margin:0;
padding-left:28%;
background-color: #333;
}

ul#nav li{
float:left;
border:1px solid whitesmoke;
width:23%;
text-align:center;
}

ul#nav li a{
background:rgb(59, 59, 59);
display:block;
padding:15% 15%;
font-weight:bold;
font-size:18px;
color:white;
text-decoration:none;
text-align:center;
}

u#nav li a:hover:not(.active){
background-color:#111;
}

ul#nav li a.active{
background-color:#111;
}

.banner img{
width:98%;
height:auto;
border-top:1px solid black;
border-bottom:1px solid black;
border-left:1px solid black;
border-right:1px solid black;
text-align:center;
}
.section{
width:29%;
float:right;
margin:2% 2%;
text-align:center;
}

footer{
background:rgb(59, 59, 59);
width:100%;
overflow:hidden;
color:white;
}

footer p a{
text-decoration:none;
}

ul#icons{
list-style-type:none;
margin:0;
padding:0;
}

ul#icons li{
display:inline;
}

ul#icons li a img{
height:60px;
}

.materials .circuit{
text-align:left;
margin-left:20px;
}

#frm{
border: black solid 1px;
width:20%;
border-radius:5px;
margin:100px auto;

#btn{
color:#fff;
background:grey;
padding:5px;
margin-left:69%;
}

/*--------------------MEDIA-------------------------*/
@media screen and (max-width:478px){
body{
font-size:13px;

}
}

@media screen and (max-width:780px){


nav{
width:100%;
margin-bottom:10px;
}
ul#nav{
list-style:none;
margin:0 auto;
padding-left:0;
}
ul#nav li{
text-align:center;
margin-left:0 auto;
width:100%;
border-top:1px solid black;
border-bottom:1px solid black;
border-right:0px solid black;
border-left:0px solid black;
}
ul#nav li a{
padding:8px 0;
font-size:16px;
}

.section{
width:100%;
}
}
6. References
1.B.S.Sourab,B.S.Sourab and Sachith D’Souza, India. ISSN: 978-1-4799-8371-1
/2015 IEEE. “Design and Implementation of Mobility Aid for Blind People”.

2.Ayat A. Nada, Mahmoud A.Fakhr, Ahmed F.Seddik, Egypt. IEEE Conference.


“Assistive Infrared Sensor Based Smart Stick for Blind People”.

7. Conclusion
The website so created is a method to provide help for blind people.This
website is interactive and user-friendly.This website helps in providing the details of
the product before registering.After registration the user can buy our product/project.

Das könnte Ihnen auch gefallen